python - 是否有将数据帧的某些值写入 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-3.x - numpy 2D 数组 - 从第一列中选择第二列中具有最大值的所有值
- python - 即使使用绝对路径,Python 脚本也无法使用 os.path.exists 工具找到路径
- json - 用冒号转义 JSON_VALUE
- google-maps - Google StreetView API 从室内提取图像。如何解决?
- javascript - 找不到匹配记录时,数据表保存状态过滤不再起作用
- python - 如何在 Pandas 中复制 Excel 的 countifs 功能
- android - 在服务中初始化一个接口对象
- c# - 配置流利的断言精度以比较十进制
- python - 如何修复错误“'py.exe' 不是内部或外部命令、可运行程序或批处理文件”?
- python - 无法在 Python 过程中拟合模型?