PythonValueError:只能比较带有相同标记的Series对象

时间:2018-02-06 03:04:15

标签: python pandas

我正在比较的2个数据帧具有不同的大小(虽然具有相同的索引),我想这就是我收到错误的原因。你能告诉我一个解决这个问题的方法。我正在寻找df2中的那些行,其user_id与df1的那些行匹配。感谢并感谢您的回复。

 data = np.array([['user_id','comment','label'],
            [100,'RT @Dvillain_: #oomf should text me.',0],
            [100,'Buy viagra',1],
            [101,'#nowplaying M.C. Shan - Juice Crew Law on',0],
            [101,'Buy viagra two',1]])

 data2 = np.array([['user_id','comment','label'],
            [100,'First comment',0],
            [100,'Buy viagra',1],
            [102,'Buy viagra two',1]])

df1 = pd.DataFrame(data=data[1:,0:],columns = data[0,0:])
df2 = pd.DataFrame(data=data2[1:,0:],columns = data[0,0:])

df = df2[df2['user_id'] == df1['user_id']]

1 个答案:

答案 0 :(得分:3)

您正在寻找isin

df = df2[df2['user_id'].isin(df1['user_id'])]
df
Out[814]: 
  user_id        comment label
0     100  First comment     0
1     100     Buy viagra     1