【发布时间】:2017-10-30 17:14:31
【问题描述】:
我有一个名为RawDatabase 的数据框,我正在将值捕捉到名为ValidationLists 的验证列表中。我从 RawDatabase 中取出一个特定的列,并将元素与验证列表进行比较。该条目将被捕捉到与其最相似的验证列表中的条目。代码如下所示:
def GetStandardisedField(rawDatabase,validationLists,field):
print('Standardising ', field,' ...')
my_list = validationLists[field]
l1=[]
for x in rawDatabase[field]:
choice = process.extractOne(x, my_list)[0]
l1.append(choice)
rawDatabase['choice']=l1
rawDatabase[field] = rawDatabase['choice']
del rawDatabase['choice']
return rawDatabase
在示例中,rawDatabase[field] 如下所示:
0 yes
1 YES123
2 nO023
3 n
4 NaN
validationList 看起来像:
YES
NO
我正在尝试捕捉所有值,以便新的 rawDatabase[field] 看起来像:
0 YES
1 YES
2 NO
3 NO
4
然而,当我尝试将NaN 值捕捉到validationList 时,我似乎遇到了问题(即使我在validationList 中包含NaN(作为测试)。
谁能告诉我处理 NaN 值的最佳方法(所以捕捉数据集中的 NaN 值是空白的)。
谢谢
【问题讨论】: