最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python基于滑動(dòng)平均思想實(shí)現(xiàn)缺失數(shù)據(jù)填充的方法

 更新時(shí)間:2019年02月21日 10:01:14   作者:Together_CZ  
今天小編就為大家分享一篇關(guān)于Python基于滑動(dòng)平均思想實(shí)現(xiàn)缺失數(shù)據(jù)填充的方法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧

在時(shí)序數(shù)據(jù)處理過(guò)程中,我們經(jīng)常會(huì)遇到由于現(xiàn)實(shí)中的種種原因?qū)е芦@取的數(shù)據(jù)缺失的情況,這里的數(shù)據(jù)缺失不單單是指為‘NaN'的數(shù)據(jù),比如在AQI數(shù)據(jù)中,0是不可能出現(xiàn)的,這時(shí)候如果數(shù)據(jù)中出現(xiàn)了0也就是數(shù)據(jù)缺失了,最近正好在拿一個(gè)污染物的數(shù)據(jù)在做模型分析,中間就遇到了數(shù)據(jù)缺失值的問(wèn)題,數(shù)據(jù)量本身不大,如果直接對(duì)缺失值進(jìn)行丟棄處理的話(huà)會(huì)進(jìn)一步減小數(shù)據(jù)量,所以這里考慮采用數(shù)據(jù)填充的方法來(lái)實(shí)現(xiàn)缺失數(shù)據(jù)的填充。我做了兩個(gè)版本其中,第一個(gè)版本很簡(jiǎn)單可以不看,主要是簡(jiǎn)單實(shí)現(xiàn)以下效果。具體實(shí)現(xiàn)如下:

#!usr/bin/env python
#encoding:utf-8
from __future__ import division
'''
__Author__:沂水寒城
功能: python 基于滑動(dòng)平均思想實(shí)現(xiàn)簡(jiǎn)易的缺失數(shù)據(jù)填充
'''
def zeroDataFill(one_all_list):
  '''
  對(duì)于0數(shù)據(jù)處理,簡(jiǎn)單實(shí)現(xiàn)版本,可忽略
  '''
  res_list=[]
  for i in range(len(one_all_list)):
    if one_all_list[i]!=0:
      res_list.append(one_all_list[i])
    else:
      if i==0:
        for j in range(1,len(one_all_list)):
          if one_all_list[j]!=0:
            res_list.append(one_all_list[j])
            break
      elif i==len(one_all_list)-1:
        res_list.append(int(sum(res_list[-3:-1])/2))
      else:
        tmp=0
        for j in range(i,len(one_all_list)):
          if one_all_list[j]!=0:
            tmp=one_all_list[j]
            break
        now=(res_list[i-1]+tmp)/2
        res_list.append(int(now))
  print res_list
  return res_list
def dataProcessing(one_all_list,num=7):
  '''
  對(duì)于時(shí)間序列數(shù)據(jù)中的 0 進(jìn)行處理,采用滑動(dòng)平均的方法來(lái)填充(默認(rèn)時(shí)間為一周)
  '''
  nozero_list=[one for one in one_all_list if one!=0]
  before_avg,last_avg=sum(nozero_list[:num])/num,sum(nozero_list[-1*num:])/num
  res_list=[]
  for i in range(len(one_all_list)):
    if one_all_list[i]!=0:
      res_list.append(one_all_list[i])
    else:
      tmp=int(num/2)+1
      if i<=tmp:
        res_list.append(int(before_avg))
      elif i>=len(one_all_list)-tmp:
        res_list.append(int(last_avg))
        slice_list=one_all_list[i-tmp:i+tmp+1]
        res_list.append(int(sum(slice_list)/(num-1)))
  print res_list
  return res_list
if __name__=='__main__':
  one_all_list=[0,12,3,5,1,5,7,8,4,0,12,14,0,0,45,34,67,43,0,9,1,0]
  zeroDataFill(one_all_list)
  dataProcessing(one_all_list,num=7)

結(jié)果如下:

[12, 12, 3, 5, 1, 5, 7, 8, 4, 8, 12, 14, 29, 37, 45, 34, 67, 43, 26, 9, 1, 17]
[5, 12, 3, 5, 1, 5, 7, 8, 4, 12, 14, 45, 34, 67, 43, 30, 33, 9, 1, 30, 8]

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

最新評(píng)論

琼中| 通河县| 石首市| 乌拉特后旗| 同心县| 喀喇沁旗| 新兴县| 赞皇县| 温宿县| 舟山市| 泊头市| 千阳县| 三门县| 千阳县| 从化市| 大埔区| 阿拉善右旗| 东丰县| 宜阳县| 凭祥市| 城固县| 城固县| 连山| 香港| 大丰市| 平舆县| 南江县| 视频| 霞浦县| 慈溪市| 巴东县| 错那县| 伊川县| 承德市| 张家川| 潮安县| 固阳县| 英吉沙县| 定州市| 大足县| 屏南县|