Python Numpy数组,Vlookup就像函数一样

问题描述 投票:0回答:1

我想请求你的帮助。步骤中的问题。 1.将两个excel文件导入Python数据框 - 到目前为止没问题2.将数据帧转换为numpy数组。 3.使用数组在python中创建VLOOKUP函数。两个数组在第一列中都有一个键,它是唯一的,可用于匹配。这两个表包括数据,这些数据在一个表中是正确的而在另一个表中没有。我想覆盖值中表中值错误的表中的值(我知道,哪个表具有正确的值...)

有没有更多的方式来做到这一点;

So far the code I wrote:

import pandas as pd

df=pd.DataFrame()

s = pd.read_excel("C:\a.xlsx")

r = pd.read_excel("C:\b.xlsx")

z=s.values

t = r.values

Here matching the two arrays, and overwriting the value

for i in z:

    for j in t:

        if z[i, 0] == t[j, 0]:

            t[i, 41] = z[j, 5]
python numpy vlookup
1个回答
0
投票

如果长度相同,请使用pd.merge,它的作用类似于vlookup:

newdf = s.merge(r, on ='same_key')

newdf将包含两个数据框中的所有列。您现在可以访问需要更新的各个列:

newdf['wrongcolumn'] = newdf['rightcolumn']
© www.soinside.com 2019 - 2024. All rights reserved.