• 数据集中空值替换成对应特征的平均值


    如果数据集中缺失数据,将其替换成所属特征的平均值。
    假如文件forTest.txt中以下数据集:

    2,2,2,NaN,2
    3,3,NaN,3,3
    4,NaN,4,4,4
    

     加载和替换函数:

    from numpy import *
    def replaceNanWithMean(filename):
        dataMat=loadDataSet(filename,',')
        numFeat=shape(dataMat)[1]
        for i in range(numFeat):
            meanVal=mean(dataMat[nonzero(~isnan(dataMat[:,i].A))[0],i])
            dataMat[nonzero(isnan(dataMat[:,i].A))[0],i]=meanVal
        return dataMat
    def loadDataSet(filename,delim='	'):
        f=open(filename)
        stringArr=[line.strip().split(delim) for line in f.readlines()]
        dataArr=[list(map(float,line)) for line in stringArr]
        return mat(dataArr)
    dataMat=replaceNanWithMean('forTest.txt')
    print(dataMat)
    

     输出:

    [[2.  2.  2.  3.5 2. ]
     [3.  3.  3.  3.  3. ]
     [4.  2.5 4.  4.  4. ]]
    
  • 相关阅读:
    11.13 同步异步协程
    GIL及进程池
    线程
    守护进程-互斥锁-IPC
    进程
    网络编程
    异常的处理
    面向对象编程2
    第一章 python学习,个人对计算机硬件的一些理解
    ActiveReports之直接打印报表
  • 原文地址:https://www.cnblogs.com/zhhy236400/p/9996441.html
Copyright © 2020-2023  润新知