2017-04-24 4 views
0

Ein bisschen eine naive Frage. Ich möchte eine dataframe erstellen, die ein vollständiges Kalenderjahr in stündlicher Auflösung (8760 Werte) überspannt. Wie kann ich die folgenden Zeilen eines Tutorials bearbeiten, um Daten aus dem Vorjahr zu ziehen.Erstellen 8760 Datenrahmen mit stündlichen Auflösung Zeitstempel

start = pd.Timestamp(datetime.date.today(), tz=time_zone) #used for testing 
end = start + pd.Timedelta(days=365) #to get all day values 

Grunde möchte ich today() mit 2016.01.01, ersetzen und dann historische prognostizierten Werte für meine Analyse ziehen.

Antwort

2

Sie start durch Subtraktion ein Jahr von was auch immer Ihr Enddatum bauen kann, ist:

date_str = '1/1/2016' 
start = pd.to_datetime(date_str) - pd.Timedelta(days=365) 
hourly_periods = 8760 
drange = pd.date_range(start, periods=hourly_periods, freq='H') 

Dann, wenn Sie bereit sind, einen Datenrahmen zu machen, setzen index=drange, zB:

# toy example data 
data = list(range(len(drange))) 

# create data frame with drange index 
df = pd.DataFrame(data, index=drange) 

Siehe Pandas Dokumente für date_range und Timedeltas für mehr.

Verwandte Themen