首页 > 解决方案 > 使用唯一值数组过滤熊猫数据框

问题描述

我有一个带有两列的 pandas DF,一列由唯一的文件名组成,另一列由该文件名的标签组成。我还有一个 numpy 文件名数组,可用于训练我的模型。我需要从 DF 中提取与我可以使用的文件名匹配的标签。我试过这个:

x = []

for i in nparray:
  for j in DF['filenames']:
    if DF['filenames'][j] == nparray[i]:
      x.append(DF['label'][j])

如果我这样做,我会收到一个关键错误,其中包含 DF 的第一个文件名的名称

标签: pythonpandasnumpydataframe

解决方案


试试这些

DF[DF['filenames'].isin(nparray)]

仅获取标签列

DF[DF['filenames'].isin(nparray)]['label']

推荐阅读