【发布时间】:2016-02-11 01:23:52
【问题描述】:
给定两个数据框,我将一些唯一值提取到 groupby 中,然后我想比较两个唯一值并找到不同的值。
unit1 = ["U1", "U2", "U1", "U2", "U1", "U2"]
unit2 = ["U1", "U2", "U1", "U2", "U1", "U2, "U3"]
count1 = [2,4,6,8,10,12]
df = pd.DataFrame({'Unit': unit1,
'Count': count1})
df2 = pd.DataFrame({'Unit': unit2,
'Count': count1})
units_in_1 = df.groupby(['Unit'])
unit1_list = units_in_1['Unit'].unique()
units_in_2 = df2.groupby(['Unit'])
unit2_list = units_in_2['Unit'].unique()
我最终想要的是 U3,这样我就可以返回并在 df2 中找到它的所有实例。
unit1_list 是一个系列,我似乎无法工作。
根据this answer 创建一个列表并进行交集失败,著名的 numpy 不可散列
如果我尝试减法,我会得到类型错误不支持 str 和 str 的操作数
请帮忙。
【问题讨论】:
-
我使用了来自@chinmay 的解决方案,因为它教会了我更多关于 python 的知识。我没有尝试 edchum 的解决方案,但它看起来确实可行。
标签: python numpy pandas dataframe series