私のdfは:
ordinal id latitude longitude timestamp epoch day_of_week
1.0 38 44.9484 7.7728 2016-06-01 08:18:46.000 1.464769 Wednesday
2.0 38 44.9503 7.7748 2016-06-01 08:28:05.000 1.464770 Wednesday
3.0 38 44.9503 7.7748 2016-06-01 08:38:09.000 1.464770 Wednesday
時間範囲に基づいて新しいdf1、df2、df3を作成したい:例:from2016-06-01 08:00:00.000
から2016-06-01 09:00:00.000
(8時から9時)
1.0 38 44.9484 7.7728 2016-06-01 08:18:46.000 1.464769 Wednesday
2.0 38 44.9503 7.7748 2016-06-01 08:28:05.000 1.464770 Wednesday
24時間ずっとやりたいです。可能であれば、列全体に適用できるコードで実行するか、1つずつ実行します。
生データの時間固有のスライスを生成する理由を説明していません。一般的に、これは悪い習慣であるか、またはpythonicではないと見なされます。
groupby
これらのスライス(ここではデータフレーム)をループできる時間に基づいてデータをグループ化することをお勧めしますgroup
。
最小限の作業例を次に示します。
import pandas as pd
import numpy as np
iN = 100
data_char = np.random.randint(0, 100, size=100)
timestamp = pd.date_range(start='2018-04-24', end='2018-04-25', periods=100)
data = {'data_char': data_char, 'timestamp': timestamp}
df = pd.DataFrame.from_dict(data)
for hour, group in df.groupby(df['timestamp'].dt.hour):
print(hour)
print(group)
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加