【问题标题】:compare row values in Dictionary比较字典中的行值
【发布时间】:2021-05-05 09:54:16
【问题描述】:

我想遍历 Dataframe 的所有行并检查列 row['Name'] 中的字符串是否存在于 productmapping 字典中。如果是,我想获取相应的密钥并将其附加到我的列表中。但是,目前它的迭代次数超出了应有的次数,并且我得到了所有 Not Founds。

mylist = []
for index, row in newdf.iterrows():
    for key, value in productmapping.items():
        if key in row['Name'].lower():
            mylist.append(key)
            break
        else:
            mylist.append('Not Found')
print(mylist)    

【问题讨论】:

标签: python python-3.x pandas dictionary data-analysis


【解决方案1】:

使用 df.apply(function_name, axis=1)。您将只浏览一次数据框。

dictionary={"key": 1}
array=[]

def function(x):
   if x["column"] in dictionary:
     array.append((x["column"],dictionary[x["column"]])) # tuple of key,value

df.apply(function, axis=1)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-20
    • 1970-01-01
    • 2023-01-07
    • 1970-01-01
    相关资源
    最近更新 更多