ホームページ  >  記事  >  バックエンド開発  >  Pandas は文字列日付を DateTime オブジェクトに効率的に変換し、日付範囲でフィルター処理するにはどうすればよいですか?

Pandas は文字列日付を DateTime オブジェクトに効率的に変換し、日付範囲でフィルター処理するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-26 12:21:09629ブラウズ

How Can Pandas Efficiently Convert String Dates to DateTime Objects and Filter by Date Range?

Pandas で文字列形式を日時形式に変換する

Pandas は、日付と時刻を表す文字列値を日時オブジェクトに変換する便利な方法を提供します。 pd.to_datetime() 関数は、さまざまな入力文字列形式を処理でき、値の内容に基づいて正しい形式を自動的に検出します。

日付を表す次の文字列値の列を考えてみましょう:

I_DATE
28-03-2012 2:15:00 PM
28-03-2012 2:17:28 PM
28-03-2012 2:50:50 PM

I_DATE を日時形式に変換するには、単に pd.to_datetime(df['I_DATE']) を使用します。形式は簡単なので、pandas は自動的に識別します。

In [51]:
pd.to_datetime(df['I_DATE'])

Out[51]:
0    2012-03-28 14:15:00
1    2012-03-28 14:17:28
2    2012-03-28 14:50:50
Name: I_DATE, dtype: datetime64[ns]

dt アクセサーを使用して datetime オブジェクトの特定のコンポーネントにアクセスすることもできます。

In [54]:
df['I_DATE'].dt.date

Out[54]:
0    2012-03-28
1    2012-03-28
2    2012-03-28
dtype: object

In [56]:    
df['I_DATE'].dt.time

Out[56]:
0    14:15:00
1    14:17:28
2    14:50:50
dtype: object

データのフィルタリング日付範囲に基づく

データが日時形式になったら、以下に基づいて簡単にフィルターできます。日付範囲。たとえば、I_DATE が特定の範囲内にある行の df DataFrame をフィルターするには、次を使用できます:

df[(df['I_DATE'] > '2015-02-04') & (df['I_DATE'] < '2015-02-10')]

Out[59]:
         date
35 2015-02-05
36 2015-02-06
37 2015-02-07
38 2015-02-08
39 2015-02-09

以上がPandas は文字列日付を DateTime オブジェクトに効率的に変換し、日付範囲でフィルター処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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