什麼是 Python 中的自我:真實世界的例子
什麼是 Python 中的自我:真實世界的例子
在本教程中,您將學習如何使用 Pandas 對時間序列數據進行重採樣。您可以在本博客底部觀看本教程的完整視頻。
重採樣的想法是什麼?這與時間序列數據有關,我們要做的是更改報告該數據的頻率。例如,將每年的值更改為每月或每週,或將每小時的數據更改為每天。簡而言之,我們正在改變層次結構中的級別。
這可以用於多種原因,例如獲得更可靠的趨勢、樣本大小和季節性。在某些報告中,如果我們使用層次結構的某個級別而不是另一個級別會更有意義。
此外,如果您有不同的數據源並且需要執行時間序列數據的連接,則重採樣會有所幫助。這也有助於處理層次結構中的不匹配問題。
為了進一步分解,我們進行了下採樣和上採樣。
降採樣是為了減少報告的頻率。它可以是從一秒轉換為一小時以減少值或按月對季度進行縮減採樣。
另一方面,上採樣是將報告的頻率從月級別降低到天。我們稍後會有更多這樣的例子。
目錄
如何使用 Pandas 對時間序列數據進行重採樣
我們將如何在 Pandas 中執行此操作?
首先,我們將索引更改為我們的時間序列數據列。然後,我們可以使用插值進行上採樣,這將填充值,我們可以通過聚合值來進行下採樣以進行匯總。
讓我們轉到 Jupyter Notebook Python 並使用 Pandas 進行檢查。
首先,我們將通過輸入import pandas as pd來使用 Pandas ,然後輸入import seaborn as sns將其可視化,然後將 matplotlib.pyplot as plt 導入以自定義Seaborn 可視化。
接下來要做的是從 vega_datasets import data獲取數據。這是獲取示例源的好地方。此外,我們將獲得sp = data.sp500()和sp.head() 庫。
到目前為止,這是我們的數據。我們有每天的每日回報和價格。
要將索引設置為日期列,請鍵入sp.set_index(['date'], inplace=True)然後再次調用sp.head 。
使用上採樣獲取值
然後,為了獲得更多的價值,讓我們使用上採樣。由於我們有每天的數據,我們可以使用最簡單的函數 sp [['price']] 來精確到小時。resample ('H').ffill ( ),然後運行它。H代表小時,M代表月份,D代表日期,依此類推。您可以在Pandas 文檔中了解更多相關信息。
正如我們所見,1 月 1 日午夜,價格為 1394.46,與隨後的凌晨 1:00 至凌晨 4:00 的時間相同。又如1月2日,收盤價為1366.42。
即使該值在小時級別不可用,也有其他方法可以執行此操作。此外,還有比僅進行前向填充更複雜的方法。對於我們的示例,我們所做的是進行上採樣插值的基本方法。
接下來,讓我們通過輸入avg_month = sp [['price]].resample ('M').mean ( )和avg_month.head ( )來進行下採樣,然後運行它進行檢查。
如圖所示,我們可以看到每個月的最後一天和平均價格。我們可以減少樣本以具有更少的值,或者我們稱之為縮減規模。
為了形象化這一點,讓我們重新繪製繪製的尺寸。然後是sns.lineplot。線圖在 X 軸較長的情況下效果更好,而 Y 值是平均每月價格。
要查看繪製的月份的平均價格,讓我們運行它。
同樣,我們有很多不同的方法可以做到這一點。例如,如果我們想知道每季度的最低價格,我們需要做的就是輸入quarter_low,然後輸入 quarter_low.head來運行它。
因此,我們現在可以看到每個季度的季度最低值。這就是您進行重採樣的方式。
使用 Pandas 中的插值方法MultiIndex
處理缺失數據
LuckyTemplates 中的 Python
結論
總而言之,Pandas 確實是為重採樣和時間序列數據而構建的。如果您正在處理時間序列數據並且具有不同的粒度,則重採樣會非常有用。
此外,請務必閱讀有關 resample 方法的 Pandas 文檔,以了解許多不同的方法來執行此操作。我們查看了基本的,但你可以做一些事情,比如每兩週一次、每月的最後一個工作日,以及更多的重採樣選項。
一切順利,
喬治山
什麼是 Python 中的自我:真實世界的例子
您將學習如何在 R 中保存和加載 .rds 文件中的對象。本博客還將介紹如何將對像從 R 導入 LuckyTemplates。
在此 DAX 編碼語言教程中,了解如何使用 GENERATE 函數以及如何動態更改度量標題。
本教程將介紹如何使用多線程動態可視化技術從報告中的動態數據可視化中創建見解。
在本文中,我將貫穿過濾器上下文。篩選上下文是任何 LuckyTemplates 用戶最初應該了解的主要主題之一。
我想展示 LuckyTemplates Apps 在線服務如何幫助管理從各種來源生成的不同報告和見解。
了解如何在 LuckyTemplates 中使用度量分支和組合 DAX 公式等技術計算利潤率變化。
本教程將討論數據緩存物化的想法,以及它們如何影響 DAX 在提供結果時的性能。
如果直到現在你還在使用 Excel,那麼現在是開始使用 LuckyTemplates 來滿足你的業務報告需求的最佳時機。
什麼是 LuckyTemplates 網關?所有你必須知道的