Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menukar Tarikh Rentetan kepada Objek Masa Tarikh dan Tapis mengikut Julat Tarikh dalam Panda?

Bagaimana untuk Menukar Tarikh Rentetan kepada Objek Masa Tarikh dan Tapis mengikut Julat Tarikh dalam Panda?

Linda Hamilton
Linda Hamiltonasal
2024-12-01 05:27:14272semak imbas

How to Convert String Dates to Datetime Objects and Filter by Date Range in Pandas?

Menukar Rentetan kepada Format Tarikh Masa dalam Panda

Masalah:

Diberikan bingkai data Pandas dengan lajur yang mengandungi nilai tarikh rentetan, bagaimana anda menukar nilai ini kepada format datetime? Selain itu, bagaimanakah anda boleh menapis baris berdasarkan julat tarikh yang ditentukan?

Penyelesaian:

Penukaran kepada Format Datetime:

Untuk menukar rentetan kepada format datetime dalam Pandas, gunakan fungsi to_datetime. Secara amnya, penghurai boleh menentukan format rentetan input secara automatik, menghapuskan keperluan untuk spesifikasi format eksplisit.

import pandas as pd

df = pd.DataFrame({'I_DATE': ['28-03-2012 2:15:00 PM', '28-03-2012 2:17:28 PM', '28-03-2012 2:50:50 PM']})

df['I_DATE'] = pd.to_datetime(df['I_DATE'])

Kod ini menukar lajur I_DATE kepada format datetime. Outputnya kelihatan seperti ini:

   I_DATE
0 2012-03-28 14:15:00
1 2012-03-28 14:17:28
2 2012-03-28 14:50:50

Komponen Tarikh Akses:

Selepas penukaran, anda boleh mengakses komponen tarikh individu, seperti tarikh, masa atau hari , menggunakan aksesori dt. Contohnya:

# Get the date only
df['I_DATE'].dt.date

# Get the time only
df['I_DATE'].dt.time

Menapis Baris Berdasarkan Julat Tarikh:

Untuk menapis baris berdasarkan julat tarikh, gunakan sintaks berikut:

df[(df['date'] > 'start_date') & (df['date'] < 'end_date')]

Sebagai contoh, untuk menapis baris dengan tarikh antara '2015-02-04' dan '2015-02-10':

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

Atas ialah kandungan terperinci Bagaimana untuk Menukar Tarikh Rentetan kepada Objek Masa Tarikh dan Tapis mengikut Julat Tarikh dalam Panda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn