gpt4 book ai didi

Python Pandas - 使用另一个数据框列的值更新数据框列

转载 作者:太空宇宙 更新时间:2023-11-03 14:39:29 25 4
gpt4 key购买 nike

我正在努力提高 Python 水平,并决定对我的兴趣之一进行一些分析。摔角!在这种情况下,日本摔跤!

基本上,我正在尝试从另一个数据帧更新一个数据帧中的值。这是我的第一个数据框的样子

|   | Wrestler          | Matches | DMR |
| 0 | TETSUYA NAITO | 9 | 0 |
| 1 | HIROSHI TANAHASHI | 9 | 0 |
| 2 | BAD LUCK FALE | 9 | 0 |
| 3 | KOTA IBUSHI | 9 | 0 |
| 4 | ZACK SABRE JR. | 9 | 0 |
| 5 | HIROOKI GOTO | 9 | 0 |
| 6 | TOMOHIRO ISHII | 9 | 0 |
| 7 | TOGI MAKABE | 9 | 0 |
| 8 | YOSHI-HASHI | 9 | 0 |
| 9 | YUJI NAGATA | 9 | 0 |

我尝试更新的列是 DMR*(Dave Meltzer 评级)*,来自另一个数据帧,该数据帧是根据我输入的一些数据生成的:

| Wrestler          | DMR      |
| BAD LUCK FALE | 3.166667 |
| HIROOKI GOTO | 3.694444 |
| HIROSHI TANAHASHI | 4.111111 |
| KOTA IBUSHI | 4.222222 |
| TETSUYA NAITO | 4 |
| TOGI MAKABE | 3.611111 |
| TOMOHIRO ISHII | 4.25 |
| YOSHI-HASHI | 3.638889 |
| YUJI NAGATA | 4.138889 |
| ZACK SABRE JR. | 3.611111 |

我感觉这很简单,但我找不到任何可以解释如何做到这一点的内容。对此的任何帮助将不胜感激。

谢谢,山

最佳答案

使用map系列:

df1['DMR'] = df1['Wrestler'].map(df2.set_index('Wrestler')['DMR'])

或者mergeleft joindrop删除列:

df1 = pd.merge(df1.drop('DMR', axis=1), df2, how='left')
<小时/>
print (df1)
Wrestler Matches DMR
0 TETSUYA NAITO 9 4.000000
1 HIROSHI TANAHASHI 9 4.111111
2 BAD LUCK FALE 9 3.166667
3 KOTA IBUSHI 9 4.222222
4 ZACK SABRE JR. 9 3.611111
5 HIROOKI GOTO 9 3.694444
6 TOMOHIRO ISHII 9 4.250000
7 TOGI MAKABE 9 3.611111
8 YOSHI-HASHI 9 3.638889
9 YUJI NAGATA 9 4.138889

注意:

df2WreSTLer 列中的值必须是唯一的。

关于Python Pandas - 使用另一个数据框列的值更新数据框列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46647470/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com