def get_usa_by_county_with_projection_df(input_dir, intervention_type): us_only = _get_usa_by_county_df() fips_df = FIPSPopulation.local().data # used to get interventions interventions_df = _get_interventions_df() projections_df = get_county_projections_df(input_dir, intervention_type, interventions_df) counties_decorated = (us_only.merge( projections_df, left_on="State/County FIPS Code", right_on="FIPS", how="inner", ).merge(fips_df[["state", "fips"]], left_on="FIPS", right_on="fips", how="inner").merge(interventions_df, left_on="state", right_on="state", how="inner")) counties_remapped = counties_decorated.rename( columns=OUTPUT_COLUMN_REMAP_TO_RESULT_DATA) counties = pd.DataFrame(counties_remapped, columns=RESULT_DATA_COLUMNS_COUNTIES) counties = counties.fillna(NULL_VALUE) counties.index.name = "OBJECTID" # assert unique key test if counties["Combined Key"].value_counts().max() != 1: raise Exception( f"counties['Combined Key'].value_counts().max() = {counties['Combined Key'].value_counts().max()}, at input_dir {input_dir}." ) return counties
def get_usa_by_county_with_projection_df(input_dir, intervention_type): us_only = get_usa_by_county_df() fips_df = FIPSPopulation.local().data # used to get interventions interventions_df = get_interventions_df() # used to say what state has what interventions projections_df = get_county_projections_df(input_dir, intervention_type) counties_decorated = us_only.merge( projections_df, left_on='State/County FIPS Code', right_on='FIPS', how='inner' ).merge( fips_df[['state', 'fips']], left_on='FIPS', right_on='fips', how='inner' ).merge( interventions_df, left_on='state', right_on='state', how = 'inner' ) counties_remapped = counties_decorated.rename(columns=OUTPUT_COLUMN_REMAP_TO_RESULT_DATA) counties = pd.DataFrame(counties_remapped, columns=RESULT_DATA_COLUMNS_COUNTIES) counties = counties.fillna(NULL_VALUE) counties.index.name = 'OBJECTID' # assert unique key test assert counties['Combined Key'].value_counts().max() == 1 return counties
def get_usa_by_county_with_projection_df(input_dir, intervention_type): us_only = _get_usa_by_county_df() fips_df = FIPSPopulation.local().data # used to get interventions interventions_df = _get_interventions_df() projections_df = get_county_projections_df(input_dir, intervention_type, interventions_df) counties_decorated = ( us_only.merge(projections_df, on=CommonFields.FIPS, how="inner") .merge(fips_df[[CommonFields.STATE, CommonFields.FIPS]], on=CommonFields.FIPS, how="inner",) .merge(interventions_df, on=CommonFields.STATE, how="inner") ) counties_remapped = counties_decorated.rename(columns=OUTPUT_COLUMN_REMAP_TO_RESULT_DATA) counties = pd.DataFrame(counties_remapped)[RESULT_DATA_COLUMNS_COUNTIES] counties = counties.fillna(NULL_VALUE) counties.index.name = "OBJECTID" if counties["Combined Key"].value_counts().max() != 1: combined_key_max = counties["Combined Key"].value_counts().max() raise Exception( "counties['Combined Key'].value_counts().max() = " f"{combined_key_max}, at input_dir {input_dir}." ) return counties