将文件加载到pandas DataFrame中,没有列标题不起作用

时间:2018-05-28 19:12:09

标签: python pandas dataframe

我有一个文本文件,我想用熊猫阅读。后来我想以csv格式保存该文本文件,我还想在保存csv文件时添加列名。

当我的文件以csv格式保存时,第一行将被列名替换。这是我的代码

df = pd.read_csv('files.txt', delim_whitespace= True, header=0) 

d = dict(zip(df.columns[::],
         ['Column{}'.format(x) for x in range(len(df.columns[::]))]))

最后,我想重命名列名,除了我的新列名替换第一行外,一切都正常工作

df = df.rename(columns = d)
df.to_csv('test.csv', index= 0)

我不确定为什么我的第一行被我的列名替换。

2 个答案:

答案 0 :(得分:6)

header=0表示“我希望标题取自我文件的0 th 行”。

您需要header=None,这意味着“我的文件根本没有标题”。

注意,您可以将重命名脚本缩短为

df.columns = 'Column' + df.columns.astype(str)

其中就地修改列标题。

答案 1 :(得分:3)

您可以使用add_prefix

df.add_prefix('columns_')