导出pandas DataFrame时,如何删除列名行?

问题描述 投票:58回答:3

假设我将以下Excel电子表格导入到一个数据框架中。

Val1 Val2 Val3
1     2    3 
5     6    7 
9     1    2

我如何删除列名行(在本例中是指 Val1, Val2, Val3)这样我就可以导出一个没有列名,只有数据的csv?

我已经尝试过 df.drop()df.ix[1:] 但都没有成功。

python pandas csv dataframe header
3个回答
113
投票

你可以在没有头的情况下写到csv中,使用的是 header=False 而不使用 index=False. 如果需要的话,你也可以通过使用 sep.

CSV示例,没有标题行,省略了标题行。

df.to_csv('filename.csv', header=False)

TSV(tab-separated)例子,省略索引列。

df.to_csv('filename.tsv', sep='\t', index=False)

13
投票

想到了一个办法

df.to_csv('filename.csv', header = False)

这告诉pandas写一个没有头行的csv文件。你可以用df.to_excel做同样的事情。


3
投票

如果你传递header=False,你会得到这个错误信息

TypeError: Passing a bool to header is invalid. Use header=None 
for no header or header=int or list-like of ints to specify the 
row(s) making up the column names

相反,使用header=None

© www.soinside.com 2019 - 2024. All rights reserved.