【问题标题】:Select rows in a panda dataframe based on condition from another dataframe with a different size根据来自另一个不同大小的数据帧的条件选择熊猫数据帧中的行
【发布时间】:2021-07-14 18:31:53
【问题描述】:

考虑一个 100x200 的数据框(称为 df1),代表来自 100 名患者的临床数据。可以通过“ID”列中的一个数字和“CENTER”列中的另一个数字来识别每个患者。 现在,考虑第二个 40*170 数据框 df2,其中包含从 df1 中随机选择的 40 名患者子集的数据,并在 6 个月后对不同变量进行测试。与 df1 类似,df2 包含列“ID”和“CENTER”。我正在尝试根据他们的 ID 和 CENTER 号码在 df1 中选择这 40 名患者,但找不到使用 Pandas 的简单方法。有什么想法吗?

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:

    你可以试试这个:

    df3 = df1[df1.ID.isin(df2.ID) & df1.CENTER.isin(df2.CENTER)]
    

    【讨论】:

    • 这不起作用。例如,df3 有一个 ID = 4 且 CENTER = 1 的患者,它不在 df2 中。这里的问题是每个患者都由 ID 和 CENTER 定义的一对特定数字定义
    • 我用小数据框尝试了这个,它对我很有效。你用你的数据试过了吗?或者至少为我们提供少量数据。
    猜你喜欢
    • 1970-01-01
    • 2018-07-15
    • 2015-08-28
    • 1970-01-01
    • 2018-12-25
    • 2017-11-10
    • 2022-01-24
    • 2020-04-28
    • 1970-01-01
    相关资源
    最近更新 更多