猿问

如何比较不同数据框熊猫中的两列并用其他列替换值

我想将 df_1(数据帧)中的“Team_1”与 df_2(数据帧)中的“Team_Id”进行比较每当找到匹配项时,我想将 df_1 中 Team_1 的值替换为 df_2 中 Team_Name 中的相应值。这样我就可以继续使用 df_1


例如:如果 df_1 中的 Team_1 = 1 和 df_2 中的 Team_Id 相等,则 Team_1 = Kolkata Knight Riders 我也想对 Team_2 重复相同的过程,请帮忙。


df_1

       Match_Id Over_Id     Ball_Id     Runs_Scored     Team_1  Team_2  Match_Date  Season_Id

106229  829710  1             1             0              1      7     2015-04-08  8

106230  829710  1             1             1              1      7     2015-04-08  8

106231  829710  1             2             1              1      7     2015-04-08  8

106232  829710  1             3             1              1      7     2015-04-08  8

106233  829710  1             3             0              1      7     2015-04-08  8

...     ...     ...     ...     ...     ...     ...     ...     ...

119425  829828  20            4             2              7      3     2015-05-24  8

119426  829828  20            5             0              7      3     2015-05-24  8

119427  829828  20            5             6              7      3     2015-05-24  8

119428  829828  20            6             0              7      3     2015-05-24  8

119429  829828  20            6             4              7      3     2015-05-24  8   ```


df_2

    Team_Id     Team_Name

0   1   Kolkata Knight Riders

1   2   Royal Challengers Bangalore

2   3   Chennai Super Kings

3   4   Kings XI Punjab

4   5   Rajasthan Royals

5   6   Delhi Daredevils

6   7   Mumbai Indians

7   8   Deccan Chargers

8   9   Kochi Tuskers Kerala

9   10  Pune Warriors

10  11  Sunrisers Hyderabad

11  12  Rising Pune Supergiants

12  13  Gujarat Lions```


Then my Output will be 


```First row of df_1 will be as following

106229  829710  1             1             0              Kolkata Knight Riders      7     2015-04-08  8```


陪伴而非守候
浏览 100回答 1
1回答

繁花不似锦

尝试这个 :df1.Team_1.update(df1.Team_1.map(df2.set_index('Team_Id').Team_Name))
随时随地看视频慕课网APP

相关分类

Python
我要回答