Exemplo n.º 1
0
def empty_measure(eco_clone):
    """Create an empty river measure."""
    empty_map = pcr.scalar(mapIO.emptyMap(eco_clone.pcr_map))
    empty_eco = measures.LegendMap(pcr.nominal(empty_map), eco_clone.legend_df)
    settings = pd.DataFrame(
        {1: ['lowering', 'dummy']},
        index=['msr_type', 'ID'],
    )
    msr = measures.Measure(settings, empty_map, empty_map, empty_eco,
                           empty_map, empty_map, empty_map, empty_map)
    return msr
Exemplo n.º 2
0
def assess_bio_effects(bio_mod, eco_ref, sections, ndff_species, maps_dir):
    """
    Determine all effects for all measures.
    """
    bs_ref = biosafe.spatialBiosafe(bio_mod,
                                    eco_ref,
                                    sections,
                                    ndff_species,
                                    params=['FI', 'TFI'],
                                    toFiles=None)
    FI_ref, TFI_ref = bs_ref.spatial()
    TFI_ref.drop(['xcoor', 'ycoor'], axis=1, inplace=True)
    TFI_ref['msr'] = 'reference'
    FI_ref.drop(['xcoor', 'ycoor'], axis=1, inplace=True)
    FI_ref['msr'] = 'reference'
    FI_list, TFI_list = [FI_ref], [TFI_ref]
    measure_names = [
        f for f in os.listdir(maps_dir)
        if os.path.isdir(os.path.join(maps_dir, f))
    ]
    for msr_name in measure_names[:]:
        print msr_name
        measure_pathname = os.path.join(maps_dir, msr_name)
        assert os.path.isdir(measure_pathname) == True
        msr = measures.read_measure(measure_pathname)
        eco_map = pcr.cover(msr.ecotopes.pcr_map, ecotopes.pcr_map)
        msr_eco = measures.LegendMap(eco_map, ecotopes.legend_df)
        bs_msr = biosafe.spatialBiosafe(bio_mod,
                                        msr_eco,
                                        sections,
                                        ndff_species,
                                        params=['FI', 'TFI'],
                                        toFiles=None)
        FI_msr, TFI_msr = bs_msr.spatial()
        TFI_msr.drop(['xcoor', 'ycoor'], axis=1, inplace=True)
        TFI_msr['msr'] = msr_name
        FI_msr.drop(['xcoor', 'ycoor'], axis=1, inplace=True)
        FI_msr['msr'] = msr_name
        FI_list.append(FI_msr)
        TFI_list.append(TFI_msr)

    FI_all = pd.concat(FI_list)
    TFI_all = pd.concat(TFI_list)
    return FI_all, TFI_all