Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Panda Boleh Menukar Tarikh Rentetan dengan Cekap kepada Objek DateTime dan Memudahkan Penapisan Berdasarkan Tarikh?

Bagaimanakah Panda Boleh Menukar Tarikh Rentetan dengan Cekap kepada Objek DateTime dan Memudahkan Penapisan Berdasarkan Tarikh?

Linda Hamilton
Linda Hamiltonasal
2024-12-03 06:53:12823semak imbas

How Can Pandas Efficiently Convert String Dates to DateTime Objects and Facilitate Date-Based Filtering?

Menukar Rentetan kepada Format Masa Tarikh dalam Panda

Dalam analisis data, menangani rentetan yang mewakili tarikh dan masa ialah cabaran biasa. Untuk mendapatkan cerapan yang bermakna, adalah penting untuk menukar rentetan ini kepada format datetime yang sesuai.

Menukar Rentetan kepada Datetime

Panda menawarkan kaedah yang mudah, to_datetime(), untuk menukar rentetan kepada format datetime. Ia secara automatik mengesan format rentetan input dan menukarnya kepada objek datetime64. Sebagai contoh, pertimbangkan bingkai data dengan lajur I_DATE yang mengandungi rentetan yang mewakili tarikh dan masa:

df['I_DATE'] = ['28-03-2012 2:15:00 PM', '28-03-2012 2:17:28 PM', '28-03-2012 2:50:50 PM']

Untuk menukar I_DATE kepada format datetime, hanya gunakan to_datetime():

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

Output akan menjadi lajur objek 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]

Tarikh Akses Komponen

Setelah rentetan telah ditukar kepada datetime, anda boleh mengakses komponen tertentu tarikh dan masa menggunakan aksesori dt. Contohnya, untuk mengekstrak komponen tarikh:

df['I_DATE'].dt.date

mengembalikan lajur objek datetime64[ns] yang mewakili tarikh sahaja. Begitu juga, anda boleh menggunakan dt.time untuk mendapatkan semula komponen masa.

Menapis Baris Berdasarkan Julat Tarikh

Untuk menapis baris berdasarkan julat tarikh, anda boleh gunakan operasi rentetan > dan <. Contohnya, untuk memilih baris di mana lajur I_DATE berada dalam julat tertentu:

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

Ini akan mengembalikan bingkai data yang mengandungi hanya baris di mana lajur I_DATE berada di antara tarikh yang ditentukan.

Atas ialah kandungan terperinci Bagaimanakah Panda Boleh Menukar Tarikh Rentetan dengan Cekap kepada Objek DateTime dan Memudahkan Penapisan Berdasarkan Tarikh?. 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