numpy 对矩阵中Nan的处理:采用平均值的方法

yipeiwu_com6年前Python基础

尽管我们可以将所有的NaN替换成0,但是由于并不知道这些值的意义,所以这样做是个下策。如果它们是开氏温度,那么将它们置成0这种处理策略就太差劲了。

下面我们用平均值来代替缺失值,平均值根据那些非NaN得到。

from numpy import *
datMat = mat([[1,2,3],[4,Nan,6]])
numFeat = shape(datMat)[1]
for i in range(numFeat):
  meanVal = mean(datMat[nonzero(~isnan(datMat[:,i].A))[0],i]) 
  #values that are not NaN (a number)
  datMat[nonzero(isnan(datMat[:,i].A))[0],i] = meanVal 
  #set NaN values to mean

以上这篇numpy 对矩阵中Nan的处理:采用平均值的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

详解Python中的循环语句的用法

一、简介       Python的条件和循环语句,决定了程序的控制流程,体现结构的多样性。须重要理解,if、while、for以及与它...

python Popen 获取输出,等待运行完成示例

我就废话不多说了,直接上代码吧! import subprocess def excuteCommand(com): ex = subprocess.Popen(com, std...

简单介绍Python中的try和finally和with方法

用 Python 做一件很平常的事情: 打开文件, 逐行读入, 最后关掉文件; 进一步的需求是, 这也许是程序中一个可选的功能, 如果有任何问题, 比如文件无法打开, 或是读取出错, 那...

Python简单生成随机姓名的方法示例

Python简单生成随机姓名的方法示例

本文实例讲述了Python简单生成随机姓名的方法。分享给大家供大家参考,具体如下: 用到random.choice(序列) 在一个序列中随机选取一个值 # coding:utf-8...

Python中list查询及所需时间计算操作示例

本文实例讲述了Python中list查询及所需时间计算操作。分享给大家供大家参考,具体如下: # -*-coding=utf-8 -*- #! python2 #filename:...