gpt4 book ai didi

python - 在 csv 文件中搜索列表值并在 python 中返回其他列值

转载 作者:太空宇宙 更新时间:2023-11-04 09:55:28 27 4
gpt4 key购买 nike

我有一个包含如下整数值的列表

mylist = [2, 10, 5]

现在我想在如下所示的 csv 文件中找到“mylist”中的元素,并返回附加到它的“item_code”。

No, item_code
1, nm111
2, nm121
3, nm131
4, nm141

我目前正在使用 csv 进行如下操作。

with open('item_codes.csv', 'r') as f:
reader = csv.reader(f, delimiter=',')
for row in reader:
if row[0] in mylist:

但是,我也有兴趣在 pandas 中执行此操作。请帮助我。

最佳答案

如果您将 csv 数据放入这样的数据框中:

df = pd.read_csv('item_codes.csv')
print(df)

输出:

No, item_code
1, nm111
2, nm121
3, nm131
4, nm141

选项 1:

您可以执行以下操作:

df[df["No"].isin([2, 10, 5])]["item_code"].tolist() 

这将为您提供与列表 [2, 10, 5] 中的整数位于同一行的所有 item_code 值的列表

选项 2:

正如@jezrael 在下面的评论中所建议的,我们也可以使用 df.loc

解释:因为 df["No"].isin([2, 10, 5]) 返回一个 bool 值数组,我们可以使用这个数组作为掩码选择行并得到相同的结果如下:

df.loc[df["No"].isin([2, 10, 5]),"item_code"].tolist()

关于python - 在 csv 文件中搜索列表值并在 python 中返回其他列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46055200/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com