繁体   English   中英

Pandas CSV仅输出特定行中的数据(to_csv)

[英]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.

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