python差分函數(shù),python差分法

如何用Python對(duì)數(shù)據(jù)進(jìn)行差分

處理過(guò)與時(shí)間有關(guān)的數(shù)據(jù)的人都知道,差分變化經(jīng)常用來(lái)使得結(jié)果更加直觀。在這篇文章里將會(huì)教你如何用Python來(lái)實(shí)現(xiàn)這一目的,讀完這篇文章,你將會(huì)掌握以下技能:

創(chuàng)新互聯(lián)建站堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站建設(shè)、網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的浦東網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

1、知道什么是差分變換以及滯后差分和差分階數(shù)的設(shè)置

2、如何手動(dòng)計(jì)算差分

3、怎樣使用Pandas內(nèi)置的差分函數(shù)

所以,讓我們趕緊開(kāi)始吧!

為什么要對(duì)時(shí)間序列數(shù)據(jù)進(jìn)行差分?

首先來(lái)看下為什么要對(duì)數(shù)據(jù)進(jìn)行差分變化,差分變化可以消除數(shù)據(jù)對(duì)時(shí)間的依賴性,也就是降低時(shí)間對(duì)數(shù)據(jù)的影響,這些影響通常包括數(shù)據(jù)的變化趨勢(shì)以及數(shù)據(jù)周期性變化的規(guī)律。進(jìn)行差分操作時(shí),一般用現(xiàn)在的觀測(cè)值減去上個(gè)時(shí)刻的值就得到差分結(jié)果,就是這么簡(jiǎn)單,按照這種定義可以計(jì)算一系列的差分變換。

滯后差分

連續(xù)觀測(cè)值之間的差分變換叫做一階滯后差分。滯后差分的步長(zhǎng)需要根據(jù)數(shù)據(jù)的時(shí)間結(jié)構(gòu)做調(diào)整,例如對(duì)于周期性變化的數(shù)據(jù),這個(gè)時(shí)間步長(zhǎng)就是數(shù)據(jù)變化的周期。

差分階數(shù)

在進(jìn)行一次差分之后,時(shí)間項(xiàng)的作用并沒(méi)有完全去掉,將會(huì)繼續(xù)對(duì)差分結(jié)果進(jìn)行差分變化,直到完全消除時(shí)間項(xiàng)的影響因素為止,這個(gè)過(guò)程中進(jìn)行的差分操作次數(shù)就稱為差分階數(shù)。

洗發(fā)水銷售數(shù)據(jù)

這份數(shù)據(jù)是三年來(lái)每月洗發(fā)水的銷售情況,總共有36個(gè)數(shù)據(jù)記錄,原始數(shù)據(jù)來(lái)自Makridakis, Wheelwright和 Hyndman (1998).,可以從下面的地址下到數(shù)據(jù):

下面的代碼將會(huì)導(dǎo)入數(shù)據(jù)并將結(jié)果畫(huà)成折線圖,如下所示:

手動(dòng)差分

在這一部分中,我們將會(huì)自定義一個(gè)函數(shù)來(lái)實(shí)現(xiàn)差分變換,這個(gè)函數(shù)將會(huì)對(duì)提供的數(shù)據(jù)進(jìn)行遍歷并根據(jù)指定的時(shí)間間隔進(jìn)行差分變換。具體代碼如下:

從上面的代碼中可以看到該函數(shù)將會(huì)根據(jù)指定的時(shí)間間隔來(lái)對(duì)數(shù)據(jù)進(jìn)行變換,一般來(lái)說(shuō),通常會(huì)計(jì)算間隔一個(gè)數(shù)據(jù)的差分,這樣的結(jié)果比較可靠。當(dāng)然,我們也可以將上面的函數(shù)進(jìn)行一定的改進(jìn),加入差分階數(shù)的指定。

下面將這函數(shù)應(yīng)用到上面洗發(fā)水銷售的數(shù)據(jù)中去,運(yùn)行之后繪出下面的圖,具體如下:

自動(dòng)差分

Pandas庫(kù)里提供了一個(gè)函數(shù)可以自動(dòng)計(jì)算數(shù)據(jù)的差分,這個(gè)函數(shù)是diff(),輸入的數(shù)據(jù)是“series'或”DataFrame'類型的,像前面自定義函數(shù)那樣,我們也可以指定差分的時(shí)間間隔,不過(guò)在這里這個(gè)參數(shù)叫做周期。

下面的例子是用Pandas內(nèi)置函數(shù)來(lái)計(jì)算差分的,數(shù)據(jù)類型是series的,使用Pandas內(nèi)置函數(shù)的好處是代碼工作量減少了不少,而且繪出的圖中包含更詳細(xì)的信息,具體效果如下:

總結(jié)

讀完本文想必你已經(jīng)學(xué)會(huì)用python來(lái)實(shí)現(xiàn)對(duì)數(shù)據(jù)的差分了,尤其是對(duì)差分的概念,手動(dòng)差分,以及使用Pandas內(nèi)置函數(shù)進(jìn)行差分都有所了解了。如果有什么好的想法歡迎在評(píng)論欄里留下。

python 如何對(duì)離散點(diǎn)求導(dǎo) 差分法的命令是什么

基于文本文檔(Markdown) 設(shè)想好需要的基本需要的表、字段、類型;

使用 Rails Migration 隨著功能的開(kāi)發(fā)逐步創(chuàng)建表;

隨著細(xì)節(jié)功能的開(kāi)發(fā)、需求,逐步增加字段,刪除字段,或者調(diào)整字段類型;

第一個(gè) Release 的時(shí)候清理 Migrations 合并成一個(gè);

隨著后期的改動(dòng),逐步增加、修改、刪除字段或表。

基本上我的所有項(xiàng)目都是這么搞的,這和項(xiàng)目是否復(fù)雜無(wú)關(guān)。

python compare函數(shù)

cmp是python的內(nèi)建函數(shù).

cmp(x,y) 用于 compare x 和 y的值.

sort(cmp)只是用于說(shuō)明,python中函數(shù)也是可以作為參數(shù)傳入其他函數(shù)來(lái)進(jìn)行調(diào)用的,排序的依據(jù)就是cmp.

python中的split函數(shù)的用法是什么?

class Calculator(Exception):

try:

x = input('Enter the first number:')

y = input('Enter the second number:')

print(int(x)/int(y))

except ZeroDivisionError:

print('The second number cannot be Zero')

except ValueError: #int方法拋出的是ValueError,所以使用TypeError是捕獲不到異常的

print('That wasn\'t a number')

執(zhí)行方法:

Python在執(zhí)行時(shí),首先會(huì)將.py文件中的源代碼編譯成Python的byte code(字節(jié)碼),然后再由Python Virtual Machine(Python虛擬機(jī))來(lái)執(zhí)行這些編譯好的byte code。這種機(jī)制的基本思想跟Java,.NET是一致的。

然而,Python Virtual Machine與Java或.NET的Virtual Machine不同的是,Python的Virtual Machine是一種更高級(jí)的Virtual Machine。

這里的高級(jí)并不是通常意義上的高級(jí),不是說(shuō)Python的Virtual Machine比Java或.NET的功能更強(qiáng)大,而是說(shuō)和Java 或.NET相比,Python的Virtual Machine距離真實(shí)機(jī)器的距離更遠(yuǎn)。

標(biāo)題名稱:python差分函數(shù),python差分法
網(wǎng)站路徑:http://muchs.cn/article2/hcpioc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、企業(yè)建站、定制網(wǎng)站、網(wǎng)站收錄、靜態(tài)網(wǎng)站、品牌網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

營(yíng)銷型網(wǎng)站建設(shè)