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

使用Python進(jìn)行時(shí)間序列分析的8種繪圖類型

 更新時(shí)間:2023年09月11日 10:47:42   作者:鯨落_  
時(shí)間序列數(shù)據(jù)是按時(shí)間順序按固定時(shí)間間隔排列的觀測(cè)值的集合,每個(gè)觀察對(duì)應(yīng)于一個(gè)特定的時(shí)間點(diǎn),并且可以以各種頻率(例如,每天、每月、每年)記錄數(shù)據(jù),本文介紹了幾種類型的繪圖,可幫助您使用 Python 進(jìn)行時(shí)間序列分析,并提供使用可免費(fèi)訪問的數(shù)據(jù)集的詳細(xì)示例

時(shí)間序列數(shù)據(jù)

時(shí)間序列數(shù)據(jù)是按時(shí)間順序按固定時(shí)間間隔排列的觀測(cè)值的集合。每個(gè)觀察對(duì)應(yīng)于一個(gè)特定的時(shí)間點(diǎn),并且可以以各種頻率(例如,每天、每月、每年)記錄數(shù)據(jù)。此類數(shù)據(jù)在許多領(lǐng)域都非常重要,包括金融、經(jīng)濟(jì)、氣候科學(xué)等,因?yàn)樗兄谕ㄟ^分析時(shí)間序列數(shù)據(jù)來掌握潛在模式、發(fā)現(xiàn)趨勢(shì)和發(fā)現(xiàn)季節(jié)性波動(dòng)。

什么是時(shí)間序列分析?

評(píng)估時(shí)間序列數(shù)據(jù)以確定相關(guān)統(tǒng)計(jì)數(shù)據(jù)和其他數(shù)據(jù)屬性的技術(shù)稱為時(shí)間序列分析。任何具有重復(fù)模式的時(shí)間序列,包括金融市場(chǎng)、天氣和社交媒體統(tǒng)計(jì)數(shù)據(jù),都可能受到影響。時(shí)間序列分析的主要目標(biāo)是研究有關(guān)市場(chǎng)趨勢(shì)和經(jīng)濟(jì)周期的關(guān)鍵思想。

可視化在從時(shí)間序列數(shù)據(jù)中獲取有洞察力的信息的過程中至關(guān)重要,使我們能夠理解復(fù)雜的關(guān)系并做出明智的決策。

本文介紹了幾種類型的繪圖,可幫助您使用 Python 進(jìn)行時(shí)間序列分析,并提供使用可免費(fèi)訪問的數(shù)據(jù)集的詳細(xì)示例。

數(shù)據(jù)集描述

數(shù)據(jù)集:太陽黑子數(shù)據(jù)集

什么是太陽黑子?

太陽黑子是太陽表面的區(qū)域,稱為光球?qū)?,此處磁?chǎng)集中,導(dǎo)致表面溫度低于周圍環(huán)境。太陽復(fù)雜的磁活動(dòng)是產(chǎn)生這些黑色區(qū)域的原因。

太陽黑子的觀測(cè)和記錄已有多年,其中一些最早的記錄來自古代文明。他們的研究極大地有助于了解太陽行為、太空天氣及其對(duì)地球氣候和通信系統(tǒng)可能產(chǎn)生的影響??茖W(xué)家仍在研究太陽黑子,以更多地了解太陽磁場(chǎng)的動(dòng)態(tài)及其如何影響我們的太陽系。

數(shù)據(jù)集變量:數(shù)據(jù)集由 2 列組成 - 從 1749 年到 1983 年的“月份”和“太陽黑子”。它基本上描述了該數(shù)據(jù)集中記錄的每個(gè)月在太陽上看到的太陽黑子的數(shù)量。

現(xiàn)在讓我們開始編碼吧!

導(dǎo)入必要的庫

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from statsmodels.graphics.tsaplots import plot_acf
from statsmodels.graphics.tsaplots import plot_pacf

導(dǎo)入數(shù)據(jù)集

# 加載每月太陽黑子數(shù)據(jù)集
url = "https://raw.githubusercontent.com/jbrownlee/Datasets/master/monthly-sunspots.csv"
data = pd.read_csv(url, parse_dates=['Month'], index_col='Month')
print(data)

輸出:

            Sunspots
Month               
1749-01-01      58.0
1749-02-01      62.6
1749-03-01      70.0
1749-04-01      55.7
1749-05-01      85.0
...              ...
1983-08-01      71.8
1983-09-01      50.3
1983-10-01      55.8
1983-11-01      33.3
1983-12-01      33.4
[2820 rows x 1 columns]

現(xiàn)在,我們可以開始了解各種類型的繪圖及其在 Python 中的實(shí)現(xiàn)。

地塊類型

1. 時(shí)間圖

時(shí)間序列數(shù)據(jù)最基本的表示形式之一是時(shí)間圖,有時(shí)稱為時(shí)間序列圖。x 軸是時(shí)間,y 軸是相關(guān)變量,按時(shí)間順序顯示數(shù)據(jù)點(diǎn)。

本研究中使用時(shí)間圖來顯示 1749 年至 1983 年整個(gè)數(shù)據(jù)集期間太陽黑子數(shù)量的每月波動(dòng)。我們可以通過查看太陽黑子數(shù)據(jù)中的總體趨勢(shì)、季節(jié)趨勢(shì)以及任何潛在的異常值來了解更多信息在時(shí)間地圖上。

這是時(shí)間圖的代碼示例

# 時(shí)間圖
plt.figure(figsize=(7, 5))
plt.plot(data.index, data['Sunspots'], marker='o', linestyle='-', markersize=5)
plt.xlabel('Date')
plt.ylabel('Number of Sunspots')
plt.title('Monthly Sunspots Time Plot')
plt.grid(True)
plt.show()

輸出:

在整個(gè)數(shù)據(jù)集期間,時(shí)間圖顯示太陽黑子數(shù)量的每月變化。這里,太陽黑子數(shù)量最多出現(xiàn)在 1960 年左右,最少出現(xiàn)在 1800 年左右。

2. 線圖

用直線連接數(shù)據(jù)點(diǎn)的簡(jiǎn)單可視化稱為線圖。提供時(shí)間序列數(shù)據(jù)的連續(xù)視圖,強(qiáng)調(diào)變量隨時(shí)間的趨勢(shì)和變化。它主要用于跟蹤數(shù)據(jù)中的長(zhǎng)期模式。

我們的研究中使用線圖來顯示太陽上可見的黑子數(shù)量的長(zhǎng)期趨勢(shì)。這使我們能夠確定太陽黑子活動(dòng)的總體趨勢(shì)以及太陽黑子的數(shù)量隨著時(shí)間的推移是增加、減少還是保持不變。

現(xiàn)在讓我們用 python 來繪制它

# 折線圖
import matplotlib.pyplot as plt
plt.figure(figsize=(7, 5))
plt.plot(data)
plt.xlabel('Date')
plt.ylabel('Number of Sunspots')
plt.title('Monthly Sunspots Line Plot')
plt.grid(True)
plt.show()

輸出:

現(xiàn)在,時(shí)間圖和線圖看起來幾乎相同,但需要注意的是,線圖是顯示兩個(gè)連續(xù)變量之間關(guān)系的圖的通用術(shù)語,沒有特別強(qiáng)調(diào)時(shí)間。

另一方面,時(shí)間圖是線圖的一種特殊形式,專注于可視化變量如何隨時(shí)間變化,其中時(shí)間是 x 軸變量。時(shí)間圖在處理時(shí)間序列數(shù)據(jù)時(shí)特別有用,其中觀察值按時(shí)間順序排序并以規(guī)則的時(shí)間間隔記錄。

3.季節(jié)情節(jié)

季節(jié)性圖將時(shí)間序列數(shù)據(jù)分解為季節(jié)性分量,以說明在預(yù)定時(shí)間間隔(例如年度或每月周期)內(nèi)重復(fù)出現(xiàn)的模式。它使我們能夠識(shí)別太陽黑子活動(dòng)的反復(fù)趨勢(shì),例如全年活動(dòng)的變化。

這是季節(jié)性圖的代碼示例

# 季節(jié)性圖
plt.figure(figsize=(7, 5))
sns.lineplot(x=data.index.month, y=data['Sunspots'], ci=None)
plt.xlabel('Month')
plt.ylabel('Number of Sunspots')
plt.title('Seasonal Plot')
plt.xticks(range(1, 13), labels=[
		'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'])
plt.grid(True)
plt.show()

輸出:

從這個(gè)季節(jié)性圖中,我們可以更多地了解太陽活動(dòng)的季節(jié)性,它揭示了太陽黑子活動(dòng)往往較高或較低的月份。

4. 直方圖和密度圖

密度圖定義為一種圖形表示形式,用于可視化數(shù)據(jù)分布并估計(jì)連續(xù)隨機(jī)變量的概率密度函數(shù) (PDF)。它基本上是直方圖的平滑版本,提供代表基礎(chǔ)數(shù)據(jù)分布的連續(xù)曲線。當(dāng)處理大型數(shù)據(jù)集或需要平滑、連續(xù)的數(shù)據(jù)表示以闡明值在整個(gè)時(shí)間序列中的分布情況時(shí),這些圖非常適合。

這是直方圖和密度圖的代碼示例

# 直方圖和密度圖
plt.figure(figsize=(7, 5))
sns.histplot(data['Sunspots'], kde=True)
plt.xlabel('Number of Sunspots')
plt.ylabel('Frequency')
plt.title('Histogram and Density Plot')
plt.grid(True)
plt.show()

輸出:

密度圖和直方圖顯示了太陽黑子數(shù)量的頻率分布,有助于我們理解太陽黑子分布的形式及其集中趨勢(shì)。

5. 自相關(guān)圖

自相關(guān)圖,也稱為相關(guān)圖,被定義為一種時(shí)間序列分析工具,用于顯示時(shí)間序列在各種滯后情況下與其自身的自相關(guān)性。數(shù)據(jù)點(diǎn)與其在不同時(shí)間滯后的先前觀測(cè)值之間的聯(lián)系是通過自相關(guān)來測(cè)量的。它基本上表示時(shí)間序列與其自身滯后值之間的相關(guān)性。這些圖主要用于識(shí)別數(shù)據(jù)中的季節(jié)性滯后

現(xiàn)在讓我們使用 python 繪制自相關(guān)圖

# 自相關(guān)圖
plt.figure(figsize=(7,5))
plot_acf(data['Sunspots'], lags=50)
plt.xlabel('Lags')
plt.ylabel('Autocorrelation')
plt.title('Autocorrelation Plot')
plt.grid(True)
plt.show()

輸出:

自相關(guān)圖顯示不同滯后的相關(guān)性,這對(duì)于了解太陽黑子活動(dòng)的季節(jié)性模式很有用。特定延遲的顯著自相關(guān)表明太陽黑子活動(dòng)可能遵循每年的模式。

6. 偏自相關(guān)函數(shù) (PACF) 圖

偏自相關(guān)函數(shù) (PACF)圖是時(shí)間序列分析中使用的圖形工具,用于確定時(shí)間序列的自回歸 (AR) 階數(shù)。在考慮所有中間延遲的影響的同時(shí),它顯示了每個(gè)延遲對(duì)時(shí)間序列當(dāng)前值的直接影響?;旧?,它檢查數(shù)據(jù)點(diǎn)與其先前觀察值之間的相關(guān)性,而不考慮干預(yù)時(shí)間步長(zhǎng)的影響。

以下是偏自相關(guān)函數(shù) (PACF) 圖的代碼示例

# PACF圖
plt.figure(figsize=(7, 5))
plot_pacf(data['Sunspots'], lags=50)
plt.xlabel('Lags')
plt.ylabel('Partial Autocorrelation')
plt.title('Partial Autocorrelation Function (PACF) Plot')
plt.grid(True)
plt.show()

輸出:

在我們的方法中,使用 PACF 圖確定對(duì)當(dāng)前太陽黑子計(jì)數(shù)有重大影響的滯后觀測(cè)數(shù)量。PACF 幫助選擇 AR 模型對(duì)太陽黑子活動(dòng)的預(yù)測(cè)順序。

7. 極坐標(biāo)圖

極坐標(biāo)圖是一種數(shù)據(jù)可視化圖,其中數(shù)據(jù)點(diǎn)以圓形圖案排列。圍繞圓的角度和距中心的徑向距離用于表示各種變量或數(shù)據(jù)屬性。這些主要用于可視化數(shù)據(jù)集中的季節(jié)性模式。

這是極坐標(biāo)圖的代碼示例

# 從上述數(shù)據(jù)集“Monthly Sunspots”的索引中提取月份和年份
data['Month_Num'] = data.index.month
# 按月份對(duì)數(shù)據(jù)進(jìn)行分組,計(jì)算每個(gè)月的平均太陽黑子數(shù)
monthly_average = data.groupby('Month_Num')['Sunspots'].mean()
# 極坐標(biāo)圖θ(角度)和半徑(長(zhǎng)度)設(shè)置
theta = np.linspace(0, 2 * np.pi, len(monthly_average))
radii = monthly_average.values
# 極坐標(biāo)圖
plt.figure(figsize=(7, 5))
plt.polar(theta, radii)
plt.title('Polar Plot of Monthly Average Sunspots')
plt.xticks(theta, ['Jan', 'Feb', 'Mar', 'Apr', 'May',
				'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'])
# 設(shè)置y軸限制以適應(yīng)數(shù)據(jù)
plt.ylim(0, radii.max() + 10)
plt.show()

輸出:

本例中的極坐標(biāo)圖顯示每月的平均太陽黑子數(shù)量。距中心的徑向距離反映了每個(gè)月的平均太陽黑子數(shù)量,而圓內(nèi)的角位置則代表月份(例如,一月、二月、三月等)。它揭示了數(shù)據(jù)中存在的任何季節(jié)性趨勢(shì),并使我們能夠看到太陽黑子活動(dòng)年度周期的循環(huán)模式。

極地圖中迷人地顯示了每月平均的太陽黑子視圖,這也揭示了全年的周期性趨勢(shì)。

8. 移動(dòng)平均圖

在時(shí)間序列分析中,移動(dòng)平均圖是一種流行的數(shù)據(jù)可視化方法,用于發(fā)現(xiàn)數(shù)據(jù)中的趨勢(shì)和模式。其主要目標(biāo)是通過確定連續(xù)數(shù)據(jù)點(diǎn)的指定窗口的平均值來消除短期波動(dòng)并揭示數(shù)據(jù)的長(zhǎng)期趨勢(shì)。

對(duì)窗口內(nèi)的數(shù)據(jù)點(diǎn)進(jìn)行平均,并將結(jié)果值顯示在圖表上以生成移動(dòng)平均圖。當(dāng)移動(dòng)平均線位于原始數(shù)據(jù)圖上時(shí),可以更輕松地發(fā)現(xiàn)和比較趨勢(shì)和季節(jié)性模式。

這是移動(dòng)平均圖的代碼示例

# 移動(dòng)平均線圖
plt.figure(figsize=(7, 5))
values = data['Sunspots']
# 7天移動(dòng)平均線
rolling_mean = values.rolling(window=7).mean()
plt.plot(values, label='Original')
plt.plot(rolling_mean, label='7-day Moving Average', color='red')
plt.xlabel('Date')
plt.ylabel('Value')
plt.title('Moving Average Plot')
plt.legend()
plt.grid(True)
plt.show()

輸出:

我們?cè)谶@里繪制 7 天移動(dòng)平均線。我們知道,移動(dòng)平均是一種通過確定后續(xù)數(shù)據(jù)點(diǎn)的預(yù)定窗口的平均值來平滑數(shù)據(jù)的技術(shù)。用于平均的數(shù)據(jù)點(diǎn)的數(shù)量取決于窗口大小,通常稱為移動(dòng)平均周期。此方法涉及對(duì) 7 天內(nèi)的初始太陽黑子數(shù)據(jù)進(jìn)行平均。

結(jié)論:

通過利用這些不同的繪圖和數(shù)據(jù)可視化技術(shù),我們可以全面了解“每月太陽黑子”數(shù)據(jù)集,識(shí)別模式并提取有關(guān)幾個(gè)世紀(jì)以來太陽活動(dòng)的寶貴見解。

通過這項(xiàng)研究,您現(xiàn)在掌握了將這些技術(shù)應(yīng)用于各個(gè)部門和行業(yè)的時(shí)間序列數(shù)據(jù)集所需的知識(shí)。時(shí)間序列分析為在任何需要序列數(shù)據(jù)的領(lǐng)域(包括經(jīng)濟(jì)、金融、氣候研究和其他領(lǐng)域)獲取深刻見解和做出數(shù)據(jù)驅(qū)動(dòng)決策提供了重要工具。通過采用這些方法,我們能夠利用與時(shí)間相關(guān)的數(shù)據(jù)并挖掘其預(yù)測(cè)潛力來解決現(xiàn)實(shí)世界的問題。

以上就是使用Python進(jìn)行時(shí)間序列分析的8種繪圖類型的詳細(xì)內(nèi)容,更多關(guān)于Python繪圖類型的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 詳解Java中一維、二維數(shù)組在內(nèi)存中的結(jié)構(gòu)

    詳解Java中一維、二維數(shù)組在內(nèi)存中的結(jié)構(gòu)

    這篇文章主要介紹了Java中一維、二維數(shù)組在內(nèi)存中的結(jié)構(gòu),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-02-02
  • 深入講解Python命令行解析模塊argparse

    深入講解Python命令行解析模塊argparse

    Python?提供了一個(gè)解析命令行參數(shù)的標(biāo)準(zhǔn)庫?argparse,可以讓我們輕松編寫用戶友好的命令行接口,接下來我們就來詳細(xì)介紹一下argparse?的使用方法吧
    2023-06-06
  • Python Tkinter實(shí)例——模擬擲骰子

    Python Tkinter實(shí)例——模擬擲骰子

    這篇文章主要介紹了Python利用tkinter模塊模擬擲骰子的實(shí)例,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-10-10
  • Python簡(jiǎn)明入門教程

    Python簡(jiǎn)明入門教程

    這篇文章主要介紹了Python簡(jiǎn)明入門教程,較為詳細(xì)的分析了Python的基本概念及語法基礎(chǔ),有助于Python初學(xué)者更好的掌握Python的基本語法與使用技巧,需要的朋友可以參考下
    2015-08-08
  • python 定時(shí)任務(wù)去檢測(cè)服務(wù)器端口是否通的實(shí)例

    python 定時(shí)任務(wù)去檢測(cè)服務(wù)器端口是否通的實(shí)例

    今天小編就為大家分享一篇python 定時(shí)任務(wù)去檢測(cè)服務(wù)器端口是否通的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python使用sklearn實(shí)現(xiàn)的各種回歸算法示例

    Python使用sklearn實(shí)現(xiàn)的各種回歸算法示例

    這篇文章主要介紹了Python使用sklearn實(shí)現(xiàn)的各種回歸算法,結(jié)合實(shí)例形式分析了Python使用sklearn庫實(shí)現(xiàn)的決策樹回歸、線性回歸、SVM回歸、KNN回歸、隨機(jī)森林回歸等各種回歸算法,需要的朋友可以參考下
    2019-07-07
  • python飛機(jī)大戰(zhàn)pygame游戲之?dāng)硻C(jī)出場(chǎng)實(shí)現(xiàn)方法詳解

    python飛機(jī)大戰(zhàn)pygame游戲之?dāng)硻C(jī)出場(chǎng)實(shí)現(xiàn)方法詳解

    這篇文章主要介紹了python飛機(jī)大戰(zhàn)pygame游戲之?dāng)硻C(jī)出場(chǎng)實(shí)現(xiàn)方法,結(jié)合實(shí)例形式詳細(xì)分析了Python使用pygame模塊實(shí)現(xiàn)飛機(jī)大戰(zhàn)游戲中敵機(jī)出場(chǎng)相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2019-12-12
  • Python字符串不可不知的6個(gè)小技巧分享

    Python字符串不可不知的6個(gè)小技巧分享

    字符串可以理解為一段普通的文本內(nèi)容,在python里,使用引號(hào)來表示一個(gè)字符串,不同的引號(hào)表示的效果會(huì)有區(qū)別,本文將給介紹Python字符串不可不知的6個(gè)小技巧分享,并有詳細(xì)的代碼供大家參考,感興趣的小伙伴可以參考一下
    2024-03-03
  • 理論講解python多進(jìn)程并發(fā)編程

    理論講解python多進(jìn)程并發(fā)編程

    這篇文章主要從理論方面講解python多進(jìn)程并發(fā)編程的相關(guān)知識(shí)點(diǎn),如果你也想學(xué)習(xí)這方面的知識(shí),參考下吧。
    2018-02-02
  • 利用Python中的Xpath實(shí)現(xiàn)一個(gè)在線匯率轉(zhuǎn)換器

    利用Python中的Xpath實(shí)現(xiàn)一個(gè)在線匯率轉(zhuǎn)換器

    這篇文章主要給大家介紹了關(guān)于如何利用Python中的Xpath實(shí)現(xiàn)一個(gè)在線匯率轉(zhuǎn)換器的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09

最新評(píng)論

广河县| 隆子县| 江城| 左贡县| 濮阳市| 都匀市| 土默特右旗| 宜川县| 故城县| 定远县| 武宣县| 江口县| 蓬溪县| 遂宁市| 孝昌县| 济南市| 嘉祥县| 达州市| 通城县| 峡江县| 六安市| 东乡县| 浙江省| 延吉市| 宿松县| 突泉县| 夏河县| 慈利县| 原平市| 庆阳市| 鹤山市| 肇州县| 车致| 元阳县| 雷州市| 开原市| 保山市| 怀远县| 山丹县| 汪清县| 凤山县|