我有一个包含整数值的列表,如下所示
No, item_code
1, nm111
2, nm121
3, nm131
4, nm141
现在我想找到' mylist'中的元素。在下面显示的csv文件中,返回' item_code'附在它上面。
with open('item_codes.csv', 'r') as f:
reader = csv.reader(f, delimiter=',')
for row in reader:
if row[0] in mylist:
我目前正在使用csv进行如下操作。
forEach
但是,我也有兴趣在熊猫中这样做。请帮帮我。
答案 0 :(得分:4)
如果将csv数据放入如下数据框中:
df = pd.read_csv('item_codes.csv')
print(df)
输出:
No, item_code
1, nm111
2, nm121
3, nm131
4, nm141
您可以执行以下操作:
df[df["No"].isin([2, 10, 5])]["item_code"].tolist()
将为您提供与列表item_code
[2, 10, 5]
值的列表
正如@jezrael在下面的评论中所建议的,我们也可以使用df.loc
。
说明:由于df["No"].isin([2, 10, 5])
返回一个布尔数组,我们可以使用这个数组作为掩码来选择行并得到相同的结果如下:
df.loc[df["No"].isin([2, 10, 5]),"item_code"].tolist()