【发布时间】:2019-12-10 01:35:36
【问题描述】:
我有一个类似于小例子的 csv 文件:
小例子:
Id sv item1 item2 item3
pos ab 4 5 8
reg ad 7 85 96
neg af 14 78 32
neg ab 47 5 6
我想从这个 csv 文件中创建一个 python 列表列表。我想跳过前 2 列,然后在“Id”列中查找“neg”。如果“Id”中的值为“neg”,我想将non-skipped 列的每一行的值放在一个内部列表中,并使用所有inner lists 制作一个列表列表。
对于这个小例子,“Id”列的最后两行是“neg”,所以我只取这些行。然后我将跳过第一 2 列,因此我们将剩下 3 列。这就是为什么结果将是具有 3 个内部列表的列表的原因。
这是预期的输出:
预期输出:
results = [[14, 47], [78, 5], [32, 6]]
为了得到这个结果,我在 python 中编写了以下代码,但它没有返回我想要的。你知道怎么解决吗?
with open("infile.txt") as f:
df = f.loc[f["Id"] == "neg"]
results = []
for line in df:
results.append(line)
【问题讨论】:
标签: python-3.x pandas csv