ホームページ >バックエンド開発 >Python チュートリアル >Pandas Datetime 列から年と月を効率的に抽出するにはどうすればよいですか?

Pandas Datetime 列から年と月を効率的に抽出するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-14 20:02:11215ブラウズ

How to Efficiently Extract Year and Month from a Pandas Datetime Column?

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。