我有一个数据帧,我想比较同一行中的字符串值。行还包括空字符串。 下面的代码完成了这个任务,但不幸的是,当两个字符串都是“None”即空字符串时返回True
Col = list(ENTITY.columns.values)
for i in combinations(Col,2):
df[i[0]+' to '+i[1]+' dedication'] =df.apply(lambda row: row[i[0]] == row[i[1]],axis=1)
df[i[0]+' to '+i[1]+' dedication'] = np.where(df[i[0]+' to '+i[1]+' dedication'], 'Y', 'N')
例如,如果row[i[0]] == "AAA1" and row[i[1]] == "AAA1"
,则输出为True
,但如果row[i[0]] == "AAA1" and row[i[1]] == None
或row[i[0]] == None and row[i[1]] == None
,则输出为False。在
当两个字符串都不为空且不匹配时,如何解决此问题? 是否可以在lambda函数中使用isinstance和basestring运算符? 期望输出: 谢谢你
通常是
^{pr2}$NaN != NaN
,因此如果这些值被存储为空值,简单的比较就足够了。如果将它们存储为'None
(字符串)2个小提示
iteritems
简化循环,不需要使用索引这里的基本逻辑是用替换空字符串努比·楠
>>>;努比== 努比·楠
错误
您需要^{} 或{a2}与}进行比较):
None
进行比较(或与{但更好的方法是比较列,然后它可以完美地工作,因为
^{pr2}$np.nan != np.nan
:样品:
相关问题 更多 >
编程相关推荐