Python Numpy数组,类似于Vlookup的函数

时间:2019-03-24 09:28:38

标签: python numpy vlookup

我想寻求您的帮助。问题逐步解决。 1.将两个Excel文件导入Python数据框架-到目前为止没有问题 2.将数据帧传输到numpy数组中。 3.使用数组在python中创建VLOOKUP函数。这两个数组在第一列中都有一个键,该键是唯一的,可用于匹配。这两个表包含的数据在一个表中正确,但在另一表中不正确。我想覆盖值错误的表中值正确的表中的值(我知道,哪个表具有正确的值...)

有没有更麻木的方法来做到这一点?

到目前为止,我编写的代码:

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

在这里匹配两个数组,并覆盖值

for i in z:

    for j in t:

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

            t[i, 41] = z[j, 5]

1 个答案:

答案 0 :(得分:0)

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

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

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

newdf['wrongcolumn'] = newdf['rightcolumn']