pandas处理丢失数据

xiaoxiao2021-03-01  70

#有两种丢失数据的方式: #    None

#    np.nan(NaN) 

#1, None# None是python当中自带的,类型为python object,

# 所以,None是不能参与到任何的计算当中的

#2, np.nan

#np.nan是浮点类型,能参与到计算当中,但是计算的结果为NaN

#pandas中None与np.nan都被视为np.nan import numpy as np import pandas as pd from pandas import Series,DataFrame df1 = DataFrame(data=np.random.randint(0,100,size=(3,3)), columns=list('ABC')) df1 df1.loc[0,'B'] = None df1 df1['C'] = np.nan df1 #pandas中None与np.nan的操作 #isnull() #notnull() #dropna() 过滤丢失的数据 #fillna() 填充丢失的数据 #新增一行,一列 df1.loc[3] = [12,12,34] df1 #dropna()默认是过滤所以丢失的值 df1.dropna() #使用axis可以控制轴向变化 df1.dropna(axis=1) # value的参数默认是把所以的空值填充 df1.fillna(value=100) #假设张三,李四,王五参加模拟考试,但是张三因为突然想明白了人生,故而放弃了英语考试。 #因为记为None,据此请创建一个DataFrame,命名为score data = np.random.randint(0,100,size=(3,3)) columns = ['yuwen','shuxue','yingyu'] index = ['zhangsan','lisi','wangwu'] score = DataFrame(data=data,index=index,columns=columns) score score.loc['zhangsan','yingyu'] = np.nan score #老师决定根据用数学的分数来填充张三的英语成绩,如何实现 #用李四的英语成绩来填充张三的英语成绩? score.fillna(method='ffill',axis=1) score.fillna(method='bfill',axis=0)
转载请注明原文地址: https://www.6miu.com/read-3350171.html

最新回复(0)