Ich verwende Pandas, um Aktienkurse Daten mit Datenrahmen zu speichern. Das Dataset enthält 2940 Zeilen. Der Datensatz Snapshot wird unten angezeigt:Füllen Sie die fehlenden Datumswerte in einer Pandas Dataframe Spalte
Die Zeitreihen-Daten enthalten nicht die Werte für Samstag und Sonntag. Daher müssen fehlende Werte gefüllt werden.
Hier ist der Code, den ich geschrieben habe, aber es löst nicht das Problem:
import pandas as pd
import numpy as np
import os
os.chdir('C:/Users/Admin/Analytics/stock-prices')
data = pd.read_csv('stock-data.csv')
# PriceDate Column - Does not contain Saturday and Sunday stock entries
data['PriceDate'] = pd.to_datetime(data['PriceDate'], format='%m/%d/%Y')
data = data.sort_index(by=['PriceDate'], ascending=[True])
# Starting date is Aug 25 2004
idx = pd.date_range('08-25-2004',periods=2940,freq='D')
data = data.set_index(idx)
data['newdate']=data.index
newdate=data['newdate'].values # Create a time series column
data = pd.merge(newdate, data, on='PriceDate', how='outer')
Wie die fehlenden Werte für Samstag und Sonntag füllen?
Bei der Verwendung von bfill() .reset_index(), Der folgende TypeError wird angezeigt: Onl y ist gültig mit DatetimeIndex, TimedeltaIndex oder PeriodIndex, hat aber eine Instanz von 'RangeIndex' – User456898
Sie müssen den Index aus der Spalte 'PriceDate' -' data.set_index ('PriceDate', inplace = True) 'setzen. – jezrael
Danke, es funktioniert jetzt gut! – User456898