Python 将行内容按元素方式连接到pandas中

Python 将行内容按元素方式连接到pandas中,python,pandas,dataframe,pandas-groupby,Python,Pandas,Dataframe,Pandas Groupby,有时我的csv有多个标题行,所有这些都很重要。例如,第二个标题行可能包含列中值的科学单位。我需要将标题行合并为一个标题行,以便对数字数据进行操作和绘图。我希望能够对csv中的前n行或数据帧中的行执行此操作,其中我指定了n 欢迎就如何处理此问题提出其他建议。编辑每个csv是不可行的。熊猫在这里是初学者,但对编程并不陌生。我通常按如下方式处理数据: 只是为您创建一些虚拟数据,请为将来做准备,这确实有助于其他人轻松回答您的问题。(也以防有人有更好的答案) 假设您的数据称为文件: df_cols =

有时我的csv有多个标题行,所有这些都很重要。例如,第二个标题行可能包含列中值的科学单位。我需要将标题行合并为一个标题行,以便对数字数据进行操作和绘图。我希望能够对csv中的前n行或数据帧中的行执行此操作,其中我指定了n


欢迎就如何处理此问题提出其他建议。编辑每个csv是不可行的。熊猫在这里是初学者,但对编程并不陌生。

我通常按如下方式处理数据:

只是为您创建一些虚拟数据,请为将来做准备,这确实有助于其他人轻松回答您的问题。(也以防有人有更好的答案)

假设您的数据称为文件:

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

老实说,我会读两次
csv
,第一行只有2行,第二行获取所有数据。由于以上内容都是
对象
,因此您必须适当地转换所有数据类型,而不是让
熊猫
自动转换。您能否将csv的前几行作为格式化文本(在代码块中)发布而不是上面的图片?作为一个经常清理混乱的SAP数据的人,其中包含n行标题(主要是交叉表),我同意ALollz,读取df两次或使用
.loc
.iloc
对其进行切片,以理清标题。我们可以读取一次文件,循环n行,将每列的行合并存储在新的数据框中,按原样填充数据框中的其余文件数据。
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