繁体   English   中英

将 dataframe 中的 header 放到第一行

[英]Drop / move header of a dataframe into first row

我有一个看起来像这样的 dataframe:

  A   B   10
0 A   B   20
1 C   A   10

所以标头不是 dataframe 的真正标头(我必须从另一个数据帧 map 它们),在这种情况下如何将标头放入第一行,它看起来像这样:

  0   1   2
0 A   B   10
1 A   B   20
2 C   A   10

请注意, pd.read_csv(..., header=None)在这种情况下会导致错误,我不知道为什么,所以我正在寻找一种解决方案来在加载文件后修复它。

最好的方法是通过read_csv中的header=None参数避免它:

df = pd.read_csv(file, header=None)

如果不可能 append 列名转换为一行DataFrame为原始数据,然后将range设置为列名:

df = df.columns.to_frame().T.append(df, ignore_index=True)
df.columns = range(len(df.columns))
print (df)
   0  1   2
0  A  B  10
1  A  B  20
2  C  A  10

让我们尝试reset_index进行修复

df = df.T.reset_index().T

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM