是否有将数据帧的某些值写入Python中的.txt文件的函数?

我有一个数据框如下:

Index A B C D E F
1     0 0 C 0 E 0 
2     A 0 0 0 0 F
3     0 0 0 0 E 0
4     0 0 C D 0 0 
5     A B 0 0 0 0

基本上我想将数据帧写入一个 txt 文件,这样每一行只包含索引和后续列名,不包括零。

例如:

txt file

1 C E 
2 A F 
3 E 
4 C D 
5 A B

数据集相当大,大约 1k 行,16k 列。有什么办法可以使用 Pandas 中的函数来做到这一点吗?

回答

在“是否为该条目”生成的布尔矩阵"0"与数据帧的列之间进行矩阵向量乘法,并将其写入文本文件to_csv(感谢@Andreas 的回答!):

df.ne("0").dot(df.columns + " ").str.rstrip().to_csv("text_file.txt")

由于添加" "到最后一个条目,我们在最后删除了空格。

如果您不希望该名称Index出现在文本文件中,您可以链接 arename_axis(index=None)以摆脱它,即,

df.ne("0").dot(df.columns + " ").str.rstrip().rename_axis(index=None)

然后to_csv如上所述。


以上是是否有将数据帧的某些值写入Python中的.txt文件的函数?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>