У меня есть файл CSV, и когда я открываю его с помощью pd_read.csv, все значения будут расположены в одном столбце. Я могу открыть файл, используя следующий код, но этот код не может прочитать заголовок (имена столбцов), а также передать первую строку. Буду признателен, если кто-нибудь изменит этот код, чтобы он также мог читать заголовок и первую строку.
# Read CSV
with open('D:/output.csv','r') as f:
# skip first lines until the data begins
while not next(f).startswith('REACH'): pass
lines = []
for line in f:
if line == '\n': break
lines.append(line.split(','))
pd.DataFrame(lines)
data_list = []
for i in range(len(lines)):
print(i)
new_list = lines[0].split(" ")
np_array = np.array(new_list)
new_array = np.delete(np_array, np.where(np_array==''))
data_list.append(new_array)
df_base = pd.DataFrame(np.array(data_list))
df_base_float = df_base.apply(pd.to_numeric, errors='coerce')
Ниже приведена часть CSV-файла:
1
SWAT Dec 23 2016 VER 2016/Rev 664 0/ 0/ 0 0: 0: 0
General Input/Output section (file.cio):
11/14/2011 12:00:00 AM ARCGIS-SWAT interface AV
RCH GIS MON AREAkm2 FLOW_INcms FLOW_OUTcms EVAPcms TLOSScms SED_INtons SED_OUTtons SEDCONCmg/L ORGN_INkg ORGN_OUTkg ORGP_INkg ORGP_OUTkg NO3_INkg NO3_OUTkg NH4_INkg NH4_OUTkg NO2_INkg NO2_OUTkg MINP_INkg MINP_OUTkg CHLA_INkg CHLA_OUTkg CBOD_INkg CBOD_OUTkg DISOX_INkg DISOX_OUTkg SOLPST_INmgSOLPST_OUTmg SORPST_INmgSORPST_OUTmg REACTPSTmg VOLPSTmg SETTLPSTmgRESUSP_PSTmgDIFFUSEPSTmgREACBEDPSTmg BURYPSTmg BED_PSTmg BACTP_OUTctBACTLP_OUTct CMETAL#1kg CMETAL#2kg CMETAL#3kg TOT Nkg TOT Pkg NO3ConcMg/l WTMPdegc
REACH 1 0 1 0.1236E+04 0.1580E+00 0.1570E+00 0.9952E-03 0.0000E+00 0.4936E-07 0.4936E-07 0.1183E-06 0.2994E-02 0.2926E-02 0.8981E-02 0.8708E-02 0.9554E+02 0.9496E+02 0.0000E+00 0.7564E+00 0.0000E+00 0.0000E+00 0.2997E-02 0.8935E-02 0.1497E-11 0.0000E+00 0.0000E+00 0.0000E+00 0.5895E+04 0.5818E+04 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.9572E+02 0.1764E-01 0.0000E+00 0.0000E+00
REACH 2 0 1 0.4258E+05 0.1359E+02 0.1349E+02 0.1017E+00 0.0000E+00 0.1528E+04 0.1528E+04 0.4235E+02 0.1090E-02 0.0000E+00 0.9718E-01 0.8582E-01 0.6785E+04 0.6751E+04 0.4156E+03 0.4561E+03 0.7791E+02 0.8763E+02 0.1965E+02 0.2719E+02 0.2774E-12 0.0000E+00 0.0000E+00 0.0000E+00 0.5033E+06 0.4995E+06 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.7294E+04 0.2728E+02 0.0000E+00 0.0000E+00
REACH 3 0 1 0.4221E+05 0.1362E+02 0.1351E+02 0.1152E+00 0.0000E+00 0.1360E+04 0.1528E+04 0.4228E+02 0.1450E-01 0.0000E+00 0.1103E+00 0.9391E-01 0.6654E+04 0.6616E+04 0.3697E+03 0.4156E+03 0.6515E+02 0.7791E+02 0.1098E+02 0.1964E+02 0.7312E-12 0.0000E+00 0.0000E+00 0.0000E+00 0.5044E+06 0.5001E+06 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.0000E+00 0.7109E+04 0.1974E+02 0.0000E+00 0.0000E+00
Подробнее здесь: https://stackoverflow.com/questions/788 ... one-column