Python中的None
None是Python自带的,其类型为python object。因此,None不能参与到任何计算中。
# None是个python对象, 它是不能参与到任何计算中
type(None) # NoneType
# None + 1 # TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
np.nan(NaN)
np.nan是浮点类型,能参与到计算中。但计算的结果总是NaN。
但可以使用np.nan*()函数来计算nan,此时视nan为0。
import numpy as np
# np.nan是浮点类型
type(np.nan) # float
# 可以参与计算, 但是结果总是np.nan
np.nan + 1 # nan
# np.nansum函数中,np.nan 看成0参与计算中
np.nansum(np.array([1, 2, 3, np.nan])) # 6.0
pandas中的None与NaN
pandas中None与np.nan处理成np.nan
from pandas import DataFrame, Series
import pandas as pd
data = np.random.randint(0, 150, size=(4, 4))
index = ['张三', '李四', '王五', '赵六']
columns = ['语文', '数学', '英语', 'python']
df = DataFrame(data=data, index=index, columns=columns)<