Example #1
0
def test_man():
    """Read a management file please"""
    manfile = dep.read_man(get_path('man.txt'))
    assert manfile['nop'] == 5
    assert manfile['nini'] == 2
    assert manfile['nsurf'] == 2
    assert manfile['nwsofe'] == 3
    assert manfile['nrots'] == 1
    assert manfile['nyears'] == 11

    manfile = dep.read_man(get_path('man2.txt'))
    assert manfile['nop'] == 0
Example #2
0
def test_man():
    """Read a management file please"""
    manfile = dep.read_man(get_path("man.txt"))
    assert manfile["nop"] == 5
    assert manfile["nini"] == 2
    assert manfile["nsurf"] == 2
    assert manfile["nwsofe"] == 3
    assert manfile["nrots"] == 1
    assert manfile["nyears"] == 11

    manfile = dep.read_man(get_path("man2.txt"))
    assert manfile["nop"] == 0
Example #3
0
    def test_man(self):
        """Read a management file please"""
        manfile = dep.read_man(get_path('man.txt'))
        self.assertEquals(manfile['nop'], 5)
        self.assertEquals(manfile['nini'], 2)
        self.assertEquals(manfile['nsurf'], 2)
        self.assertEquals(manfile['nwsofe'], 3)
        self.assertEquals(manfile['nrots'], 1)
        self.assertEquals(manfile['nyears'], 11)

        manfile = dep.read_man(get_path('man2.txt'))
        self.assertEquals(manfile['nop'], 0)
Example #4
0
def test_man():
    """Read a management file please"""
    manfile = dep.read_man(get_path('man.txt'))
    assert manfile['nop'] == 5
    assert manfile['nini'] == 2
    assert manfile['nsurf'] == 2
    assert manfile['nwsofe'] == 3
    assert manfile['nrots'] == 1
    assert manfile['nyears'] == 11

    manfile = dep.read_man(get_path('man2.txt'))
    assert manfile['nop'] == 0
Example #5
0
def main():
    """Go Main Go"""
    # ['id', 'CropRotationString', 'slope',
    #                           'rainfall', 'runoff', 'detach', 'delivery'])
    rows = []
    for root, _dirs, files in tqdm(os.walk("/i/0/ofe")):
        for filename in files:
            ofedf = read_ofe("%s/%s" % (root, filename))
            # Drop any 2007 or 2018+ data
            ofedf = ofedf[(ofedf['date'] < datetime.date(2018, 1, 1))
                          & (ofedf['date'] >= datetime.date(2008, 1, 1))]
            # Figure out the crop string
            man = "%s/%s" % (root.replace(
                "ofe", "man"), filename.replace("ofe", "man"))
            try:
                manres = read_man(man)
            except Exception as exp:
                print("failure reading %s\n%s" % (man, exp))
                continue

            slp = "%s/%s" % (root.replace(
                "ofe", "slp"), filename.replace("ofe", "slp"))
            slpres = read_slp(slp)
            soils = get_soils(slp.replace('slp', 'prj'))
            for ofe in ofedf['ofe'].unique():
                myofe = ofedf[ofedf['ofe'] == ofe]
                length = slpres[ofe - 1]['x'][-1] - slpres[ofe - 1]['x'][0]
                slp = ((slpres[ofe - 1]['y'][0] - slpres[ofe - 1]['y'][-1]) /
                       length)
                rows.append({
                    'id':
                    "%s_%s" % (filename[:-4], ofe),
                    'huc12':
                    filename[:12],
                    'fpath':
                    filename.split("_")[1][:-4],
                    'ofe':
                    ofe,
                    'CropRotationString': (get_rotation_string(manres, ofe)),
                    'slope[1]':
                    slp,
                    'soil_mukey':
                    soils[ofe - 1],
                    'rainfall':
                    -1,
                    'runoff[mm/yr]':
                    myofe['runoff'].sum() / YEARS,
                    'detach':
                    -1,
                    'length[m]':
                    length,
                    'delivery[t/a/yr]':
                    (myofe['sedleave'].sum() / YEARS / length * 4.463)
                })

    df = pd.DataFrame(rows)
    df.to_csv('results.csv', index=False)
Example #6
0
def main():
    """Go Main Go"""
    # ['id', 'CropRotationString', 'slope',
    #                           'rainfall', 'runoff', 'detach', 'delivery'])
    rows = []
    for root, _dirs, files in tqdm(os.walk("/i/0/ofe")):
        for filename in files:
            ofedf = read_ofe("%s/%s" % (root, filename))
            # Drop any 2007 or 2018+ data
            ofedf = ofedf[(ofedf['date'] < datetime.date(2018, 1, 1)) &
                          (ofedf['date'] >= datetime.date(2008, 1, 1))]
            # Figure out the crop string
            man = "%s/%s" % (root.replace("ofe", "man"),
                             filename.replace("ofe", "man"))
            try:
                manres = read_man(man)
            except Exception as exp:
                print("failure reading %s\n%s" % (man, exp))
                continue

            slp = "%s/%s" % (root.replace("ofe", "slp"),
                             filename.replace("ofe", "slp"))
            slpres = read_slp(slp)
            soils = get_soils(slp.replace('slp', 'prj'))
            for ofe in ofedf['ofe'].unique():
                myofe = ofedf[ofedf['ofe'] == ofe]
                length = slpres[ofe - 1]['x'][-1] - slpres[ofe - 1]['x'][0]
                slp = ((slpres[ofe - 1]['y'][0] - slpres[ofe - 1]['y'][-1]) /
                       length)
                rows.append({
                    'id': "%s_%s" % (filename[:-4], ofe),
                    'huc12': filename[:12],
                    'fpath': filename.split("_")[1][:-4],
                    'ofe': ofe,
                    'CropRotationString': (
                        get_rotation_string(manres, ofe)),
                    'slope[1]': slp,
                    'soil_mukey': soils[ofe - 1],
                    'rainfall': -1,
                    'runoff[mm/yr]': myofe['runoff'].sum() / YEARS,
                    'detach': -1,
                    'length[m]': length,
                    'delivery[t/a/yr]': (
                        myofe['sedleave'].sum() / YEARS / length * 4.463)
                    })

    df = pd.DataFrame(rows)
    df.to_csv('results.csv', index=False)