ホームページ >バックエンド開発 >Python チュートリアル >Pandas はどのようにして文字列日付を DateTime オブジェクトに効率的に変換し、日付ベースのフィルタリングを容易にできるのでしょうか?
Pandas で文字列を日時形式に変換する
データ分析では、日付と時刻を表す文字列の処理が一般的な課題です。意味のある洞察を抽出するには、これらの文字列を適切な日時形式に変換することが重要です。
文字列を日時形式に変換する
Pandas では、to_datetime() という便利なメソッドを提供しています。文字列を日時形式に変換します。入力文字列の形式を自動的に検出し、datetime64 オブジェクトに変換します。たとえば、日付と時刻を表す文字列を含む I_DATE 列を持つデータフレームを考えます。
df['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 を日時形式に変換するには、単純に to_datetime() を使用します。
df['I_DATE'] = pd.to_datetime(df['I_DATE'])
出力datetime64の列になりますオブジェクト:
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]
日付コンポーネントへのアクセス
文字列が datetime に変換されると、dt アクセサーを使用して日付と時刻の特定のコンポーネントにアクセスできます。たとえば、日付コンポーネントを抽出するには、
df['I_DATE'].dt.date
は、日付のみを表す datetime64[ns] オブジェクトの列を返します。同様に、dt.time を使用して時間コンポーネントを取得できます。
日付範囲に基づいて行をフィルタリング
日付の範囲に基づいて行をフィルタリングするには、次の操作を実行できます。文字列操作を使用します >そして<。たとえば、I_DATE 列が特定の範囲内にある行を選択するには:
df[(df['I_DATE'] > '2015-02-04') & (df['I_DATE'] < '2015-02-10')]これにより、I_DATE 列が指定された日付の間にある行のみを含むデータフレームが返されます。
以上がPandas はどのようにして文字列日付を DateTime オブジェクトに効率的に変換し、日付ベースのフィルタリングを容易にできるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。