-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathctd_io.py
49 lines (37 loc) · 1.31 KB
/
ctd_io.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
from pathlib import Path
import pandas as pd
def load_ct1(dir=None, ssscc_list=None):
# load continuous CTD data and make into a dict
file_list = sorted(Path(dir).glob("*_ct1*"))
if ssscc_list:
breakpoint()
ctd_data = []
for f in file_list:
df = pd.read_csv(f, header=12, skiprows=[13], skipfooter=1, engine="python")
df["SSSCC"] = f.stem[:5]
ctd_data.append(df)
ctd_data = pd.concat(ctd_data, axis=0, sort=False)
return ctd_data
def load_pkl(dir=None, ssscc_list=None):
file_list = sorted(Path(dir).glob("*.pkl"))
if ssscc_list:
breakpoint()
upcast_data = []
for f in file_list:
df = pd.read_pickle(f)
df["SSSCC"] = f.stem[:5]
# change to secondary if that is what's used
upcast_data.append(df[["SSSCC", "CTDCOND1", "CTDTMP1", "CTDPRS"]])
upcast_data = pd.concat(upcast_data, axis=0, sort=False)
return upcast_data
def load_salt(dir=None, ssscc_list=None):
file_list = sorted(Path(dir).glob("*.csv"))
if ssscc_list:
breakpoint()
salt_data = []
for f in file_list:
df = pd.read_csv(f, usecols=["STNNBR", "CASTNO", "SAMPNO", "SALNTY"])
df["SSSCC"] = f.stem[:5]
salt_data.append(df)
salt_data = pd.concat(salt_data, axis=0, sort=False)
return salt_data