类型的参数' NoneType'不是可迭代的熊猫

时间:2017-07-13 05:01:38

标签: python pandas

我有以下两个功能:

#To update the label1 if word is present with is_name
def update(data,word_lists, is_name):
 for wlist in word_lists:
    if check_keywords(data, wlist):
        return is_name
 return ''

#To check if Words are present in my Short_description field.
def check_keywords(data, words):
 cnt=0
 for word in words:
    if word in data:
        cnt+=1
 return cnt==len(words)

以下是我的数据格式:

  

Short_description,label1

这些是我的数据ACE_2017中的列。 我需要在Short_description中检查关键字并更新label1

以下是我的更新命令:

#To check if "access request" or "request Access" is present in Short_description then it should update label1 with 'Access request'

ACE_2017.ix[ACE_2017['label1']=='','label1'] = ACE_2017[ACE_2017['label1']==''].Short_description.map(lambda x: update(x,[['access request','request Access']],'Access request'))

但是当我运行上面的命令时,它说

  

类型的参数' NoneType'是不可迭代的

我在这里缺少什么,我该如何解决这个问题。

1 个答案:

答案 0 :(得分:1)

这个问题对你很清楚。 “类型'NoneType'的参数不可迭代”。在python中,如果你试图迭代一个None类型的对象,那么就会出现问题。

在您的情况下,除了“简短描述”列值之外,其他每个参数都要起作用。随着每次迭代而变化。检查“简短描述”列是否包含任何“NaN”值。!!