欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

pandas中read_csv、rolling、expanding用法詳解

 更新時間:2020年04月21日 17:14:09   作者:Suiiiii  
這篇文章主要介紹了pandas中read_csv、rolling、expanding用法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

如下所示:

import pandas as pd
from pandas import DataFrame

series = pd.read_csv('daily-min-temperatures.csv',header=0, index_col=0,
      parse_dates=True,squeeze=True)
temps = DataFrame(series.values)
width = 3
shifted = temps.shift(width-1)
print(shifted)
window = shifted.rolling(window=width)
dataframe = DataFrame()
dataframe = pd.concat([window.min(),window.mean(),window.max(),temps],axis=1)
dataframe.columns=['min','mean','max','t+1']
print(dataframe.head(5))

read_csv中參數(shù)用法:

當(dāng)設(shè)置 header=None 時,則認為csv文件沒有列索引,為其添加相應(yīng)范圍的索引,range(1,1200)指建立索引號從1開始最大到1199的列索引,當(dāng)數(shù)據(jù)長度超過范圍時,索引沿列數(shù)據(jù)的右側(cè)對齊。

obj=pd.read_csv('testdata.csv',header=0,names=range(1,4))

當(dāng)設(shè)置 header=0 時,則認為csv文件數(shù)據(jù)第一行是列索引,將用新的列索引替換舊的列索引。

obj=pd.read_csv('testdata.csv',index_col=0,usecols=[1,2,3])

當(dāng)設(shè)置 index_col=0 時,則是csv文件數(shù)據(jù)的指定數(shù)據(jù)中的第一列是行索引,usecols指選中數(shù)據(jù)的對應(yīng)列數(shù),[1,2,3]指第2列到第4列。

obj=pd.read_csv('testdata.csv',index_col=0,usecols=5)

用usecols選擇前n行數(shù)據(jù)進行后續(xù)處理,n為正整型。

rolling用法:

源代碼

 def rolling(self, *args, **kwargs):
  """
  Return a rolling grouper, providing rolling functionality per group.
  """
  from pandas.core.window import RollingGroupby

  return RollingGroupby(self, *args, **kwargs)

 @Substitution(name="groupby")
 @Appender(_common_see_also)

用法代碼演示

上面我們介紹了滑動窗口的概念及實現(xiàn)函數(shù)的參數(shù),下面我們通過代碼演示,依次展示各參數(shù)的作用。

import matplotlib.pylab as plt
import numpy as np
import pandas as pd
index=pd.date_range('20190116','20190130')
data=[4,8,6,5,9,1,4,5,2,4,6,7,9,13,6]
ser_data=pd.Series(data,index=index)
print(ser_data)

加入rolling使用時間窗后及具體原理

ser_data.rolling(3).mean()

min_periods用法

如上圖所示,當(dāng)窗口開始滑動時,第一個時間點和第二個時間點的時間為空,這是因為這里窗口長度為3,他們前面的數(shù)都不夠3,所以到2019-01-18時,他的數(shù)據(jù)就是2019-01-16到2019-01-18三天的均值。那么有人就會這樣想,在計算2019-01-16序列的窗口數(shù)據(jù)時,雖然不夠窗口長度3,但是至少有當(dāng)天的數(shù)據(jù),那么能否就用當(dāng)天的數(shù)據(jù)代表窗口數(shù)據(jù)呢?答案是肯定的,這里我們可以通過min_periods參數(shù)控制,表示窗口最少包含的觀測值,小于這個值的窗口長度顯示為空,等于和大于時有值,如下所示:

表示窗口最少包含的觀測值為1

ser_data.rolling(3,min_periods=1).mean()

expanding用法

征用前面全部的數(shù)據(jù)

代碼詳解

import pandas as pd
from pandas import DataFrame

series = pd.read_csv('daily-min-temperatures.csv',header=0, index_col=0,
      parse_dates=True,squeeze=True)
temps = DataFrame(series.values)
window = temps.expanding()
dataframe = DataFrame()
dataframe = pd.concat([window.min(),window.mean(),window.max(),temps.shift(-1)],axis=1)
dataframe.columns=['min','mean','max','t+1']
print(dataframe.head(5))

輸出結(jié)果

expanding可去除NaN值

以上這篇pandas中read_csv、rolling、expanding用法詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 淺談python之新式類

    淺談python之新式類

    這篇文章主要介紹了淺談python之新式類,詳細的介紹了如何使用新式類和經(jīng)典類的區(qū)別。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08
  • 如何使用Django默認的Auth權(quán)限管理系統(tǒng)

    如何使用Django默認的Auth權(quán)限管理系統(tǒng)

    本文主要介紹了如何使用Django默認的Auth權(quán)限管理系統(tǒng),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • 零基礎(chǔ)學(xué)Python(一)Python環(huán)境安裝

    零基礎(chǔ)學(xué)Python(一)Python環(huán)境安裝

    本文是此系列的第一篇,所以開始先胡扯一番,然后再分別介紹LINUX系統(tǒng),windows系統(tǒng),MAC系統(tǒng)下如何安裝Python環(huán)境,希望對大家有所幫助
    2014-08-08
  • python數(shù)字圖像處理圖像的繪制詳解

    python數(shù)字圖像處理圖像的繪制詳解

    這篇文章主要為大家介紹了python數(shù)字圖像處理圖像的繪制示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • Python學(xué)習(xí)筆記之列表推導(dǎo)式實例分析

    Python學(xué)習(xí)筆記之列表推導(dǎo)式實例分析

    這篇文章主要介紹了Python學(xué)習(xí)筆記之列表推導(dǎo)式,結(jié)合實例形式分析Python列表推導(dǎo)式的原理、寫法與相關(guān)使用技巧,需要的朋友可以參考下
    2019-08-08
  • 關(guān)于Python3 類方法、靜態(tài)方法新解

    關(guān)于Python3 類方法、靜態(tài)方法新解

    今天小編就為大家分享一篇關(guān)于Python3 類方法、靜態(tài)方法新解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • 深入Python函數(shù)編程的一些特性

    深入Python函數(shù)編程的一些特性

    這篇文章主要介紹了更為深入的Python函數(shù)編程的一些特性,本文來自于IBM官方開發(fā)者技術(shù)文檔,需要的朋友可以參考下
    2015-04-04
  • Yolov5(v5.0)+pyqt5界面設(shè)計圖文教程

    Yolov5(v5.0)+pyqt5界面設(shè)計圖文教程

    眾所周知界面設(shè)計一般指UI設(shè)計,下面這篇文章主要給大家介紹了關(guān)于Yolov5(v5.0)+pyqt5界面設(shè)計的相關(guān)資料,文中通過圖文以及實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-04-04
  • python 將list轉(zhuǎn)成字符串,中間用符號分隔的方法

    python 將list轉(zhuǎn)成字符串,中間用符號分隔的方法

    今天小編就為大家分享一篇python 將list轉(zhuǎn)成字符串,中間用符號分隔的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • selenium中g(shù)et_cookies()和add_cookie()的用法詳解

    selenium中g(shù)et_cookies()和add_cookie()的用法詳解

    這篇文章主要介紹了selenium中g(shù)et_cookies()和add_cookie()的用法詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01

最新評論