2021-06-30

6.29数据分析学习笔记

#一、NAN与INF值
#NAN:not a number,表示不是一个数字,但它本身是浮点类型.np.NAN != np.NAN,NAN与任何值进行任何运算,结果都为NAN
#INF:Infinity,无穷大,也是浮点类型。np.inf表示正无穷大,-np.inf表示负无穷大,inf一般出现在除数为0的时候
import numpy as np
import pandas as pd

a1 = np.random.randint(0,10,size = (4,7)).astype(np.float)
a1[0,1] = np.NAN
a1[1,2] = np.NAN
np.NAN == np.NAN
print(a1)
print(a1[0,1]*2)
#二、NAN值的处理
#1、删除所有NAN值,删除后数组会变为一维数组
# a1[~np.isnan(a1)]
#2、删除空值所在的行
lines = np.where(np.isnan(a1))[0]
a2 =  np.delete(a1,lines,axis = 0)
print(a2)

#3、替换NAN值
scores = np.loadtxt(r'C:\Users\chen\Documents\Jupyter\data\test3.csv',skiprows = 1,delimiter = ',',encoding='ANSI',dtype=np.str)
scores[scores == ''] = np.NAN
scores1=scores.astype(np.float)
scores2 = scores1.copy()
scores1[np.isnan(scores1)] = 0
print(scores1)
scores1.sum(axis = 1)
for x in range(socres2.shape[1]):
    col = scores2[:,x]
    col1 = col[~np.isnan(col)]
    mean=col1.mean()
    col[np.isnan(col)]=mean
    scores2[:,x]=col
print(scores2)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值