是否有快速检查字符串列表中的NANs的方法?我试过np.isnan(x)
,但得到TypeError
消息Not implemented for this type
,因为x
在大多数情况下是str
类型。检查字符串列表中的NANs
任何帮助表示赞赏。
是否有快速检查字符串列表中的NANs的方法?我试过np.isnan(x)
,但得到TypeError
消息Not implemented for this type
,因为x
在大多数情况下是str
类型。检查字符串列表中的NANs
任何帮助表示赞赏。
如果你想如果你想检查一个字符串正是“男”,以检查是否“男”是在一个字符串
for item in list:
if 'NaN' in item:
print 'NaN in string!'
for item in list:
if 'NaN' == item:
print 'String is NaN!'
如果你不知道的“男”
for item in list:
if 'nan' == item.lower():
print 'String is NaN!'
,最简单的办法的情况下的一个字符串列表内专门检查float('nan')
是到c赫克为float类型,然后检查!=
自身是否truthy(这是唯一实际nan
值的情况下):
>>> nan = float('nan')
>>> isinstance(nan, float)
True
>>> nan != nan
True
def typesafe_isnan(obj):
return isinstance(obj, float) and obj != obj
谢谢。这似乎工作。你能解释一下,nan!= nan正在工作还是obj!= obj正在工作? – 2017-06-03 10:29:32
另一种选择是只在列表转换一切为字符串:
my_list = [str(my_list) for l in my_list]
所有np.nan
将被转换为字符串'nan',并且所有字符串都将保留字符串。然后你可以过滤掉'南'。
你在字符串列表中究竟是什么意思? – 2014-12-03 00:32:03
@PadraicCunningham我的意思是浮点型NaNs。 – 2014-12-03 04:38:38