【问题标题】:Trying to grab data using an id in one dataframe in another seperate dataframe that do not posses the same column name尝试使用不具有相同列名的另一个单独数据帧中的一个数据帧中的 id 来获取数据
【发布时间】:2021-11-12 16:52:14
【问题描述】:

我有两个数据框

wizards = {player_id': ["3", "4", "0", "9"],
    'name':["beal", "avdija", "hachimura", "dinwiddie"],
    'total points':}
stat_sheet = {jersey_number': ["9", "9" , "0", "3", "4", "0", "9", "9", , "9" , "0", , "3", 
"4", "0", "9"], 'total points':[40, 20, 12, 14, 55, 67, 10, 22, 22, 5, 3, 12, 5, 1]}
wiz_df = pd.DataFrame(wizards)
weeklystats_df = pd.DataFrame(stat_sheet)

我需要确保我将每个玩家的所有分数加起来:

比尔总共得到 17 分,因此他在 wiz_df 内的部分将是他在 wiz_df 内的行的 17 分

所以这需要为每个球员完成,因为唯一的 ID 是 player_id 和 jersey_number

我尝试编写一个不起作用的多重嵌套 for 循环,我尝试加入也不起作用的表。有点坚持这一点将不胜感激我能得到的所有帮助。

【问题讨论】:

    标签: python pandas loops join inner-join


    【解决方案1】:

    您可以将.groupbyweeklystats_df 结合,然后将.mergewiz_df 结合起来:

    x = wiz_df.merge(
        weeklystats_df.groupby("jersey_number").sum(),
        left_on="player_id",
        right_index=True,
        how="left",
    )
    print(x)
    

    打印:

      player_id       name  total points
    0         3       beal            17
    1         4     avdija            67
    2         0  hachimura            89
    3         9  dinwiddie           115
    

    wiz_df 已使用:

      player_id       name
    0         3       beal
    1         4     avdija
    2         0  hachimura
    3         9  dinwiddie
    

    weeklystats_df 已使用:

       jersey_number  total points
    0              9            40
    1              9            20
    2              0            12
    3              3            14
    4              4            55
    5              0            67
    6              9            10
    7              9            22
    8              9            22
    9              0             5
    10             3             3
    11             4            12
    12             0             5
    13             9             1
    

    【讨论】:

    • 这成功了!非常感谢!
    猜你喜欢
    • 2021-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-25
    • 1970-01-01
    相关资源
    最近更新 更多