【发布时间】:2020-12-15 14:24:18
【问题描述】:
比较 2 df 的 df1 有 1000 多行重复的 unique_id,但 df2 只有唯一的 unique_id's.each 和 df1 中的每一行我想与 df2 进行比较,以便 df2 中存在 unique_id 如果匹配比较相同的类别和子类别从 df1 到 df2。 输出:如果其中任何一个不匹配,则应该将该索引放入数组中。
import pandas as pd
import numpy as np
data1 = {'unique_id':
['Computer','iPhone','Printer','Desktop','Computer','iPhone','iphpne','Printer','Desktop','Computer','iPhone','Printer','Desktop'],
'category':
['movies','documentary','series','special','movies','documentary','series','special','series','special','movies','series','special'],
'subcategory':
['drama','horror','comedy','reality','drama','documentary','comedy','reality','documentary','comedy','documentary','comedy','drama']
}
df1 = pd.DataFrame(data1,columns= ['unique_id', 'category','subcategory'])
data2 = {'unique_id': ['Computer','iPhone','Printer','Desktop'],
'category': ['movies','documentary','series','special'],
'subcategory':['drama','horror','comedy','reality']
}
df2 = pd.DataFrame(data2,columns= ['unique_id', 'category','subcategory'])
【问题讨论】:
-
是什么阻止您使用
unique id加入数据框? -
请给出您预期的输出。问题陈述和期望不是很清楚。
-
我尝试使用 df2 循环遍历 df1 中的每一行,但出现错误。因为 df1 有 1200 行,但 df2 只有 20 行
-
我的意思是 df2 仅具有唯一值,但 df1 具有 1 个 unique_id 多行具有不同类别和子类别字段。需要检查 df1 每一行的值是否与 df2 匹配。如果不匹配则拾取索引。