pandas, python - wie man bestimmte zeiten in timeseries auswählt

Ich habe jetzt eine ganze Weile mit Python und Pandas gearbeitet, um eine Reihe von Stundendaten zu analysieren, und finde sie ganz nett. (Von Matlab kommend.)

Jetzt stecke ich irgendwie fest. Ich habe meine erstelltDataFrame so wie das:

<code>SamplingRateMinutes=60
index = DateRange(initialTime,finalTime, offset=datetools.Minute(SamplingRateMinutes))
ts=DataFrame(data, index=index)
</code>

Was ich jetzt tun möchte, ist, die Daten für alle Tage in den Stunden 10 bis 13 und 20 bis 23 auszuwählen, um die Daten für weitere Berechnungen zu verwenden. Bisher habe ich die Daten mit aufgeschnitten

<code> selectedData=ts[begin:end]
</code>

Und ich bin sicher, dass es zu einer Art Dirty-Loop kommt, um die benötigten Daten auszuwählen. Aber es muss eine elegantere Möglichkeit geben, genau zu indizieren, was ich will. Ich bin sicher, dass dies ein häufiges Problem ist und die Lösung im Pseudocode ungefähr so ​​aussehen sollte:

<code>myIndex=ts.index[10<=ts.index.hour<=13 or 20<=ts.index.hour<=23]
selectedData=ts[myIndex]
</code>

Um zu erwähnen, ich bin ein Ingenieur und kein Programmierer :) ... noch

Antworten auf die Frage(4)

Ihre Antwort auf die Frage