码迷,mamicode.com
首页 > 其他好文 > 详细

pandas isnull函数

时间:2018-06-13 18:46:32      阅读:1182      评论:0      收藏:0      [点我收藏+]

标签:元素   put   mis   pandas   inpu   span   div   range   null   

#-*- coding: utf-8 -*-
#拉格朗日插值
import pandas as pd
from scipy.interpolate import lagrange

inputfile = ../data/missing_data.xls #输入数据路径,需要使用Excel格式;
outputfile = ../tmp/missing_data_processed.xls #输出数据路径,需要使用Excel格式

data = pd.read_excel(inputfile) #读入数据

#自定义列向量插值函数
#s为列向量,n为被插值的位置,k为取值前后的数据个数,暂定为5
def ployinterp_column(s,n,k=5):

    y = s.reindex(list(range(n-k,n))+list(range(n+1,n+1+k))) #取数

    y = y[y.notnull()] #剔除空值
    # print(y);exit();
    return lagrange(y.index,list(y))(n) #插值并返回插值结果

#逐个元素判断是否需要插值
for i in data.columns:
    for j in range(len(data)):
        # print(data)
        # exit()
        if(data[i].isnull())[j]: #如果为空就插值   data[i].isnull()返回true/false结果矩阵
            # print(data[i].isnull());exit();                         #
            data[i][j] = ployinterp_column(data[i],j)

data.to_excel(outputfile,header=None,index=False)

 

pandas isnull函数

标签:元素   put   mis   pandas   inpu   span   div   range   null   

原文地址:https://www.cnblogs.com/hanshuai0921/p/9179221.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!