Pandas の日時列から月と年の値を抽出する
Pandas データフレームで時系列データを操作する場合、多くの場合、特定の値を抽出する必要があります。分析または視覚化を目的とした日時値からのコンポーネント。この場合、pandas.tslib.Timestamp オブジェクトを含む列から月と年だけを抽出することを目的としています。
これらの値を抽出するために、いくつかの方法が試行されています。 「M」頻度の resample() メソッドは、DatetimeIndex または PeriodIndex を必要とするため失敗します。 Timestamp オブジェクトの getitem 属性がないため、ラムダ関数のアプローチは失敗します。
エレガントな解決策は、Dataframe のインデックスをArrivalDate 列に設定することです。これにより、日時値がインデックス ラベルに変換されます。後続のリサンプリング操作は、インデックスを使用して実行できます:
df.index = df['ArrivalDate']
ただし、年と月の値を新しい列に個別に抽出するには、別のアプローチをお勧めします:
df['year'] = pd.DatetimeIndex(df['ArrivalDate']).year df['month'] = pd.DatetimeIndex(df['ArrivalDate']).month
あるいは、dt アクセサーを簡潔な構文に使用することもできます:
df['year'] = df['ArrivalDate'].dt.year df['month'] = df['ArrivalDate'].dt.month
これら操作により、抽出された値を含む「年」と「月」という名前の新しい列が作成されます。これにより、これらのコンポーネントを柔軟に使用して、さらなる分析や操作が可能になります。
以上がPandas Datetime 列から年と月を効率的に抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。