如何根据某些值的相似性更新数据框列?

How to update dataframe columns based on the similarity of in certain values?

我有一个带有混乱城市的用户数据框(有些也不见了)名称如下:

a = [['New York', '10460', '21', '321321.12' ], 
['Brooklyn', '11219', '03', '2432567.52'], [' ', '11363', '320', '34325.543]]
userdf = pd.DataFrame(a, columns=['City', 'Post Code', 'Lat', 'Long])
userdf

现在我想根据邮政编码修复城市、纬度和经度列中的名称,方法是查看位置数据框中的相应邮政编码,官方详细信息如下:

location = [['Bronx', '10460', '21', '321321.12' ], 
['Brooklyn', '11219', '03', '2432567.52'], [' ', '11363', '320', '34325.543]]
locationdf = pd.DataFrame(location, columns=['City', 'Post Code', 'Lat', 'Long])

我尝试了多种方法,但都失败了。我如何根据条件 userdf['Post Code'] 等于 locationdf['Post Code'].

使用 locationdf 中的值更新 userdf 中的某些列

您可以使用.loc。例如,如果您想更改城市。

userdf['City'] = locationdf.loc[userdf['Post Code']==locationdf['Post Code']]['City']