本文主要是介绍python NaN, null,空,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
python问题及解决
1.关于NaN,null,非空的判断等问题
使用pandas DataFrame的处理数据的过程中,遇见太多问题,整理此文档,记录遇见的问题以及解决方法,方便自己下次查看。
1.1 NaN != NaN
有些条目中没有数据,打印时它会显示成nan,而nan是没有办法和任何数据进行比较的,它不和任何值相等,包括他自己(因此也可以用 a ! = a 来判断a是否是nan)。
import pandas as pd
df = pd.read_csv('test.csv')
print(df)name id0 zhangsan 11 lisi 22 wanger NaN3 wanzi 4print(df['id'].notnull()0 True1 True2 False3 Trueprint(df[df['id'].notnull()]name id0 zhangsan 11 lisi 23 wanzi 4
2. x.ravel()和x.flatten()的区别
,这两个函数的作用是,将多维降低为一维。返回copy还是返回原图的区别。x.flatten()返回的是copy,修改它,不会对原始的x有影响,但是x.ravel()返回的是原始的view,修改它会直接修改原始的x值。
>> x = np.array([[1,2],[3,4]])
>>> x.flatten()[1] = 100
>>> print(x)
[[1 2][3 4]]
>>> x.ravel()[1] = 100
>>> print(x)
[[ 1 100][ 3 4]]
3. 判断[]
def pd(st):if st:print('不为空')
def pd2(st):if not st:print('不存在')
def pd1(st):if st is None:print('是 None')
pd(a) # 不返回任何内容,,即not st
pd1(a) # 不返回任何内容,即 not None
pd(2) # 返回“不存在”,即 not st
不为空
即’a = []’ 为’ if not a’ = true, 即满足 not a, 但是不满足 is None
3. 具体了解numpy,pandas,scipy等等,到底是什么以及有什么区别
4. numpy.contatenate和pandas.concat的区别
5. axis=0 和1到底怎么区别横行和竖行
这篇关于python NaN, null,空的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!