【问题标题】:PythonValueError: Can only compare identically-labeled Series objectsPython ValueError:只能比较标签相同的系列对象
【发布时间】:2018-02-06 03:04:14
【问题描述】:

我正在比较的 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']]

【问题讨论】:

    标签: python pandas


    【解决方案1】:

    您正在寻找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
    

    【讨论】:

    • 快点打败我吧!
    • @pault 有点快。我很幸运:-)
    • @Chandan yw~ 快乐编码
    猜你喜欢
    • 2018-01-25
    • 2020-05-05
    • 1970-01-01
    • 2020-09-17
    • 2018-12-06
    • 1970-01-01
    • 1970-01-01
    • 2018-11-12
    • 1970-01-01
    相关资源
    最近更新 更多