从另一个Datafram中查找id和值

2024-07-07 00:09:21 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我们有两个数据帧(Basketball\u ID和Basketball\u Games),我们如何在Basketball\u Games中添加两列(Home\u City和Away\u City),并从Basketball\u ID中为每支球队包含“City”(例如波士顿,马萨诸塞州)的全名?你知道吗

棒球队ID:

  Team_ID    City     
  BOS        Boston, MA   
  DET        Detroit, MI
  NYY        New York, NY
  PIT        Pittsburgh, PA

棒球比赛:

  Home      Away    Home_City    Away_City 
  NYY       DET     ??           ??
  PIT       BOS     ??           ??

Tags: 数据idcityhomebostongamesteamdet
1条回答
网友
1楼 · 发布于 2024-07-07 00:09:21

我认为您正在寻找“合并”功能:

Baseball_Games = pd.merge(Baseball_Games, Baseball_id, how='inner', left_on='Home', 
  right_on='Team_ID').drop('Team_ID', axis=1).rename(columns={'City': 'Home_City'})
Baseball_Games = pd.merge(Baseball_Games, Baseball_id, how='inner', left_on='Away', 
  right_on='Team_ID').drop('Team_ID', axis=1).rename(columns={'City': 'Away_City'})

结果:

    Home    Away Home_City      Away_City
0   NYY     DET  New York, NY   Detroit, MI
1   PIT     BOS  Pittsburgh, PA Boston, MA

从你的问题中,我不确定是否有任何列是索引。如果是,请使用'right\u index'=True(或'left\u index',以您需要的数据帧索引为准)而不是'right\u on'或'left\u on'。你知道吗

希望这有帮助

相关问题 更多 >