Isonjululwe: iipanda zibuyela ngasemva emva kokwenziwa kwesampulu

Kwihlabathi lanamhlanje, ukuguqulwa kwedatha kunye nohlalutyo kubalulekile ekuqondeni izinto ezahlukeneyo kunye nokwenza izigqibo ezizizo. Omnye wemisebenzi eqhelekileyo kuhlalutyo lwedatha kukuphinda kuqwalaselwe idatha yoluhlu lwexesha, olubandakanya ukutshintsha ukuphindaphindwa kwedatha, mhlawumbi ngokunyusa (ukunyusa i-frequency) okanye i-downsampling (ukunciphisa ukuphindaphinda). Kweli nqaku, siza kuxoxa ngenkqubo yokuzaliswa ngasemva ngelixa sihlaziya idatha yedatha usebenzisa ithala leencwadi lePython elinamandla, iPandas.

Ngasemva Gcwalisa Data Series Series

Xa sisebenzisa idatha yochungechunge lwexesha, sonyusa amaxesha amaninzi amanqaku edatha, nto leyo edla ngokukhokelela kumaxabiso alahlekileyo kumanqaku edatha adalwe ngokutsha. Ukuzalisa la maxabiso angekhoyo, sinokusebenzisa iindlela ezahlukeneyo. Enye indlela enjalo ibizwa ngokuba ukuzaliswa ngasemva, kwaziwa njenge buyisela umva. Ukuzaliswa ngasemva yinkqubo yokuzalisa amaxabiso angekhoyo ngexabiso elilandelayo elikhoyo kuluhlu lwexesha.

Pandas Library

IPython Ithala leencwadi lePandas sisixhobo esibalulekileyo sokuguqulwa kwedatha, enikezela uluhlu olubanzi lwemisebenzi yokuphatha izakhiwo zedatha njengeDataFrames kunye nedatha yochungechunge lwexesha. I-Pandas ineempawu ezakhelwe ngaphakathi ezenza kube lula ukusebenza kunye nedatha yochungechunge lwexesha, njengokuphinda kwenziwe kwakhona kunye nokuzalisa amaxabiso alahlekileyo, okusenza sikwazi ukwenza ngokufanelekileyo ukuzaliswa ngasemva emva kokuhlaziywa.

Isisombululo: Gcwalisa ngasemva ngeePandas

Ukubonisa inkqubo yokufaka ukuzaliswa ngasemva emva kokuhlaziya idatha yoluhlu lwexesha usebenzisa iiPandas, makhe siqwalasele umzekelo olula. Siza kuqala ngokungenisa ngaphandle iilayibrari eziyimfuneko kunye nokudala isampula yexesha ledatha yedatha.

import pandas as pd
import numpy as np

# Create a sample time series dataset
date_rng = pd.date_range(start='2022-01-01', end='2022-01-10', freq='D')
data = np.random.randint(0, 100, size=(len(date_rng), 1))

df = pd.DataFrame(date_rng, columns=['date'])
df['value'] = data

Ngoku ekubeni sinesampulu yedatha yethu, siza kuqhubeka ngokunyusa kunye nokusebenzisa indlela yokuzalisa ngasemva. Kulo mzekelo, siza kuyenza isampuli ukusuka kwifrikhwensi yemihla ngemihla ukuya kwifrikhwensi yeyure:

# Upsample the data to hourly frequency
df.set_index('date', inplace=True)
hourly_df = df.resample('H').asfreq()

# Apply the backward fill method to fill missing values
hourly_df.fillna(method='bfill', inplace=True)

Kule khowudi ingasentla, siqala siseta ikholamu 'yomhla' njengesalathiso kwaye emva koko siphinde siphinde sisebenzise idatha ukuya kwifrikhwensi yeyure sisebenzisa isampuli () umsebenzi. Isiphumo se-DataFrame sinamaxabiso alahlekileyo ngenxa yokwanda rhoqo. Emva koko sasebenzisa i gcwalisa () Indlela eneparameter 'bfill' ukwenza umva ugcwalise amaxabiso angekhoyo.

Inkcazo ngeNyathelo ngeNyathelo

Masiyicalule ikhowudi ukuze siyiqonde ngcono:

1. Siqale sangenisa ngaphandle iPandas kunye nethala leencwadi leNumPy:

   import pandas as pd
   import numpy as np
   

2. Senze isampula yexesha ledatha yedatha usebenzisa i umhla_uluhlu() umsebenzi ukusuka kwiPandas ukuvelisa imihla yemihla ngemihla kunye namaxabiso amanani angaqhelekanga:

   date_rng = pd.date_range(start='2022-01-01', end='2022-01-10', freq='D')
   data = np.random.randint(0, 100, size=(len(date_rng), 1))
   df = pd.DataFrame(date_rng, columns=['date'])
   df['value'] = data
   

3. Okulandelayo, sibeka ikholamu 'yomhla' njengesalathiso kwaye siphinde siphinde sisebenzise idatha kwifrikhwensi yeyure kunye isampuli () kwaye asfreq() imisebenzi:

   df.set_index('date', inplace=True)
   hourly_df = df.resample('H').asfreq()
   

4. Okokugqibela, siye sazalisa amaxabiso angekhoyo kwiSakhelo seDatha esonyusiweyo sisebenzisa i gcwalisa () indlela ene-'bfill' iparameter yokuzaliswa ngasemva:

   hourly_df.fillna(method='bfill', inplace=True)
   

isiphelo

Kweli nqaku, sihlolisise inkqubo ye ukuzaliswa ngasemva emva kokwenza isampulu yothotho lwedatha usebenzisa ithala leencwadi lePandas elinamandla ePython. Ngokuqonda kunye nokuphumeza obu buchule, sinokuyilawula ngokufanelekileyo kwaye sihlalutye idatha yoluhlu lwexesha, sifumana ukuqonda okubalulekileyo kunye nokwenza izigqibo ezinolwazi.

Izithuba ezihambelanayo:

Shiya Comment