python - 在 Python 中从数据文件中选择列
问题描述
我有一个看起来像这样的数据文件
0,000 1024,000 1017,000
0,897 1024,000 1017,000
1,896 1024,000 1017,000
2,897 1024,000 1017,000
3,896 1024,000 1017,000
4,897 1024,000 1017,000
我想选择第二列和第三列并将它们放在两个单独的列表中,但我不知道该怎么做。这是我到目前为止所得到的:
file = open('data_file',"r")
file_content = file.read()
file.close()
我做了一些尝试选择一个完整的列,但还没有让它工作。我应该怎么做?
解决方案
您可以阅读其中的行,然后过滤到最后两列。从那里,您可以使用zip
将列转换为列表。
with open('data_file') as f:
lines = [line.split() for line in f.readlines()]
columns = [[col[1], col[2]] for col in lines]
print(list(list(col) for col in zip(*columns)))
zip
如果您只是阅读它的描述,这很棘手。像这样摆弄它以了解它的工作原理要好得多:
list(zip((2,4,6),(1,3,5)))
推荐阅读
- sas - 从外部文件读取
- pandas - TensorFlow 数据集:无法将 NumPy 数组转换为张量(不支持的对象类型 numpy.ndarray)
- flutter - 将行定位在堆栈 Flutter 的底部
- docusignapi - SOAP API RequestTemplate 信封收件人没有签名组信息
- c# - 如何设置 Bing 地图样式?
- javascript - 函数无法识别来自另一个函数的条件
- android - “组合”一个类和一个函数
- python - 是否可以将 Tkinter 画布绘图限制为特定帧?
- rust - 如何将成功组合器与 nom 中的映射组合器结合使用?
- c# - 如何在 C# 中为 Combobox 编写关系代码?