我有一个dataframe里面有一列数据如下,类型是字符串,None时python中的None类型
sample.iloc[0:,6:7]
strive_time
0 2016-04-08 19:11:30
1 2016-04-08 11:46:06
2 None
3 None
4 2016-04-08 20:22:14
我使用<比较大小的时候结果不正确,整个dataframe比较时会导致整个比较结果全是True
sample.iloc[0:,6:7]<'1'
strive_time
0 True
1 True
2 True
3 True
4 True
使用sample.lt或者仅截取单个series的时候比较结果没问题
sample.iloc[0:,6:7].lt('1')
strive_time
0 False
1 False
2 False
3 False
4 False
sample.iloc[0:,6]<'1'
0 False
1 False
2 False
3 False
4 False
Name: strive_time, dtype: bool
这是为何……查了文档也没有找到相关的解释,是不是和里面的None值相关
한 단계로 디버그하고 그 이유를 살펴보겠습니다
"<"의 기본값은 오버로드된 함수 __lt__를 호출하는 것입니다.
코드는 _comp_method_FRAME(func, name, str_rep, Masker=False)에 있습니다.