有时我的csv具有多个标题行,所有这些行都很重要。例如,第二个标题行可能包含该列中值的科学单位。我需要将标题行合并为一个标题行,以便可以对数值数据进行操作和绘图。我希望能够对csv中的前n行或数据帧中指定n的行执行此操作。
欢迎提出有关如何处理此问题的替代建议。编辑每个csv是不可行的。熊猫初学者在这里,但不是编程新手。
答案 0 :(得分:2)
我通常按如下方式处理数据:
仅为您创建一些虚拟数据,请在将来为SO做好准备,它确实可以帮助其他人轻松地回答您的问题。 (以防万一有人有更好的答案)!
pore_throat = ['(nm)',21638,20542,19431.2,18262.85]
injection_pres = ['(psi)',4.93,5.19,5.49,5.82]
df = pd.DataFrame({'pore throat radius' : pore_throat,
'Injection Pressure' : injection_pres})
假设您的数据称为文件:
df_cols = pd.read_csv(file,nrows=1)
cols = df_cols.columns + ' ' + df_cols.iloc[0]
df = pd.read_csv(file,skiprows=1) # skip the string row so the dtypes are numbers/floats.
df.columns = cols
print(df)
pore throat radius (nm) Injection Pressure (psi)
1 21638.00 4.93
2 20542.00 5.19
3 19431.20 5.49
4 18262.85 5.82