[英]Pandas CSV output only the data in a certain row (to_csv)
我只需要将熊猫数据框中的特定行输出到CSV文件。 换句话说,输出只需要在X行中用逗号分隔的一行中就有数据,而没有别的。 我在使用to_CSV时遇到的问题是我无法找到一种仅处理数据的方法。 我总是收到多一列的行。
data.to_csv(filename, index=False)
给
0,1,2,3,4,5
X,Y,Z,A,B,C
第一行只是列数,它是数据框的一部分,而不是数据。 我只需要数据。 有什么方法可以简单地做到这一点,还是我需要突破熊猫并在python中进一步处理数据?
注意:前面的示例只有1行数据,但是最好也具有选择行的语法。
您可以尝试以下方法:
df = pd.DataFrame({'A': ['a','b','c','d','e','f'], 'B': [1,2,3,4,5,6]})
A B
0 a 1
1 b 2
2 c 3
3 d 4
4 e 5
5 f 6
您可以选择所需的行,在这种情况下,我选择index 1
处的行:
df.iloc[1:2].to_csv('test.csv', index=False, header=False)
csv
文件的输出如下所示( 确保您使用header=False
):
b 2
你可以用这个
data.to_csv(filename, index=False, header=False)
header
表示:
header:布尔值或字符串列表,默认为True写出列名。 如果给出了字符串列表,则假定它是列名的别名
您可以在pandas.DataFrame.to_csv中找到更多具体信息
似乎您正在寻找从现有数据框中过滤数据并将其写入.csv文件的方法。
为此,您需要过滤数据。 然后应用to_csv
命令。
这是命令
df[df.index.isin([3,4])]
如果这是你的数据
>>> df
A B
0 X 1
1 Y 2
2 Z 3
3 A 4
4 B 5
5 C 6
那么这将是您预期的过滤内容。 那么您可以在其上面应用to_csv
。
>>> df[df.index.isin([3,4])]
A B
3 A 4
4 B 5
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.