gpt4 book ai didi

Python Pandas 从另一个数据帧更新数据帧值

转载 作者:太空狗 更新时间:2023-10-29 18:13:39 28 4
gpt4 key购买 nike

我在 python 中有两个数据框。我想使用来自另一个数据帧的匹配值更新第一个数据帧中的行。第二个数据框用作覆盖。

这是一个具有相同数据和代码的示例:

数据框 1:

enter image description here

数据框 2:

enter image description here

我想根据匹配的代码和名称更新更新数据框 1。在此示例中,Dataframe 1 应更新如下:

enter image description here

注意:代码 =2 且名称 = Company2 的行更新为值 1000(来自 Dataframe 2)

import pandas as pd

data1 = {
'Code': [1, 2, 3],
'Name': ['Company1', 'Company2', 'Company3'],
'Value': [200, 300, 400],

}
df1 = pd.DataFrame(data1, columns= ['Code','Name','Value'])

data2 = {
'Code': [2],
'Name': ['Company2'],
'Value': [1000],
}

df2 = pd.DataFrame(data2, columns= ['Code','Name','Value'])

有任何指示或提示吗?

最佳答案

使用按索引对齐的 DataFrame.update (https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.update.html):

>>> df1.set_index('Code', inplace=True)
>>> df1.update(df2.set_index('Code'))
>>> df1.reset_index() # to recover the initial structure

Code Name Value
0 1 Company1 200.0
1 2 Company2 1000.0
2 3 Company3 400.0

关于Python Pandas 从另一个数据帧更新数据帧值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49928463/

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