中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python時間序列缺失值如何處理

發布時間:2021-08-11 10:05:38 來源:億速云 閱讀:216 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關Python時間序列缺失值如何處理的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

時間序列缺失值處理

一、編程前準備

收集時間序列數據,相信看這篇博客的各位已經完成了這步。

需要安裝pandas模塊,并利用Python的Lib文件夾自帶的datetime庫(當時我因為在Pycharm環境中沒看到datetime模塊又去安裝了DateTime模塊并看了DateTime英文文檔,發現這個對象的參數并不能滿足時間序列缺失填充的需求,所以又下了datetime2模塊,在import  datetime2時發現Python自帶datetime庫,血虐啊,真是對菜鳥不要太善良)。

二、編程與講解

因為我的數據不是普遍形式的時間序列形式,而下面程序是我按普遍形式時間序列數據改編的,與我數據不適用,所以可能存在問題,但是程序所用步驟和程序原理都是與原程序相同,對于初步接觸的同行具有一定的借鑒和參考意義。

import pandas as pd
import datetime
def load_Data():
  #加載數據
  df0 = pd.read_csv("Path/power.csv",index_col='user_id')
  df0['record_date'] = pd.to_datetime(df0['record_date'])
  return df0
 
#把datetime轉成字符串
def datetime_toString(dt):
  return dt.strftime("%Y-%m-%d")
 
#把字符串轉成datetime
def string_toDatetime(string):
  return datetime.strptime(string, "%Y-%m-%d")
 
#缺失值處理,插值替換
def data_Full():
  df1 = load_Data()  #加載數據
  date_start = df1.iloc[0, 0] #初始時間
  df1_date = df1['record_date'].tolist() #數據日期轉為列表
  df1_data = df1[ 'value'].tolist()  #數據值轉為列表
  act = 365    #實際期望日期序列長度
  for j in range(0, len(df1_date)):
    if len(df1_date) < act:
      date0 = date_start
      date_s = datetime_toString(date0)  #日期轉換為字符串類型,使日期可進行邏輯比較
      date_i = df1_date[j]  #順序選取數據中日期列表里對應各日期
      date_is = datetime_toString(date_i)
      while date_is != date_s:  #如數據中日期列表與期望日期序列不相等,即存在缺失值執行while程序
        nada = (df1_data[j] + df1_data[j+1]) / 2  #計算缺失處左右相鄰插值
        adda = [date0, nada]  
        date_da = pd.DataFrame(adda).T
        date_da.columns = df1.columns
        df1 = pd.concat([df1, date_da]) #將缺失日期加入數據列表中
        date0 += datetime.timedelta(days=1) #日期加一
        date_s = datetime_toString(date0)  #日期字符串轉日期時間類型
      date0 += datetime.timedelta(days=1) #日期加一
      date_s = datetime_toString(date0)  #日期字符串轉日期時間類型
  df1 = df1.sort_values(by=['record_date'])
  return df1

感謝各位的閱讀!關于“Python時間序列缺失值如何處理”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

合作市| 玉环县| 东城区| 资溪县| 冷水江市| 德化县| 竹溪县| 稷山县| 松桃| 江川县| 岑溪市| 金门县| 个旧市| 虞城县| 富蕴县| 通江县| 松原市| 荥经县| 东乡| 全椒县| 华容县| 两当县| 蛟河市| 石城县| 巫溪县| 荔波县| 峨眉山市| 景谷| 永昌县| 北票市| 徐水县| 清苑县| 清水县| 英山县| 黑河市| 土默特右旗| 化隆| 南宫市| 察雅县| 渝北区| 仙居县|