Mengonversi String DateTimes ke Objek datetime Python

Python

Menangani String DateTime dengan Python

Saat bekerja dengan kumpulan data besar, informasi tanggal dan waktu biasanya disimpan sebagai string. Mengubah representasi string ini menjadi objek tanggal-waktu Python sangat penting untuk melakukan manipulasi atau analisis tanggal-waktu. Tugas ini mudah dilakukan menggunakan pustaka bawaan Python, yang menyediakan cara efisien untuk mengurai dan mengonversi string tanggal-waktu.

Dalam artikel ini, kita akan mempelajari cara mengubah string tanggal-waktu, seperti "1 Juni 2005 13:33" dan "28 Agustus 1999 12:00," menjadi objek tanggal-waktu Python. Proses ini sangat penting untuk memastikan bahwa data tanggal-waktu berada dalam format yang mudah dimanipulasi dan dianalisis. Mari selami metode dan praktik terbaik untuk mencapai konversi ini.

Memerintah Keterangan
datetime.strptime() Mengurai string menjadi objek datetime berdasarkan format yang ditentukan.
map() Menerapkan fungsi ke semua item dalam daftar input.
lambda Membuat fungsi anonim untuk penggunaan jangka pendek.
pd.Series() Membuat objek seperti array satu dimensi dari daftar, di panda.
pd.to_datetime() Mengonversi argumen menjadi datetime di panda, secara opsional menggunakan format yang ditentukan.
append() Menambahkan elemen ke akhir daftar.

Memahami Proses Konversi

Pada skrip pertama, kami menggunakan bawaan Python modul untuk mengubah string tanggal-waktu menjadi objek. Itu fungsi digunakan untuk mengurai string berdasarkan format yang ditentukan. Di sini, kami mendefinisikan formatnya sebagai "%b %d %Y %I:%M%p", yang sesuai dengan string tanggal-waktu tertentu. Itu loop mengulangi setiap string tanggal-waktu dalam daftar, mengubahnya menjadi a objek, dan menambahkannya ke daftar. Pendekatan ini mudah dan ideal untuk skenario yang mengutamakan keterbacaan dan kesederhanaan.

Skrip kedua menampilkan penggunaan metode yang lebih ringkas dan itu fungsi. Di sini, kita melewati a berfungsi untuk map(), yang berlaku untuk setiap item di daftar. Metode ini efisien dan mengurangi verbositas kode, menjadikannya pilihan tepat bagi pengembang berpengalaman yang mencari solusi ringkas. Kedua skrip mencapai tujuan yang sama: mengubah string tanggal-waktu menjadi objek, tetapi mereka menawarkan gaya berbeda yang disesuaikan dengan preferensi pengkodean yang berbeda.

Memanfaatkan Panda untuk Konversi DateTime

Dalam skrip ketiga, kami menggunakan perpustakaan, yang sangat efisien untuk menangani kumpulan data besar. Kita mulai dengan membuat a dari daftar string tanggal-waktu. Itu pd.to_datetime() fungsi kemudian digunakan untuk mengkonversi ke objek. Metode ini sangat ampuh ketika menangani data yang luas, seperti menawarkan banyak fungsi untuk manipulasi dan analisis data.

Menggunakan menyederhanakan proses penanganan dan konversi data tanggal-waktu, terutama saat bekerja dengan kerangka data. Itu Fungsinya serbaguna dan dapat menangani berbagai format tanggal-waktu, menjadikannya alat yang tangguh bagi ilmuwan dan analis data. Secara keseluruhan, ketiga skrip menunjukkan metode berbeda untuk mengonversi string tanggal-waktu objek dengan Python, melayani berbagai kebutuhan dan tingkat keahlian.

Mengonversi String Tanggal ke Objek Datetime Python

Python dengan modul datetime

from datetime import datetime

date_strings = ["Jun 1 2005 1:33PM", "Aug 28 1999 12:00AM"]
datetime_objects = []

for date_str in date_strings:
    dt_obj = datetime.strptime(date_str, "%b %d %Y %I:%M%p")
    datetime_objects.append(dt_obj)

print(datetime_objects)

Mengurai String DateTime Secara Efisien dengan Python

Python dengan pemahaman daftar dan peta

from datetime import datetime

date_strings = ["Jun 1 2005 1:33PM", "Aug 28 1999 12:00AM"]

datetime_objects = list(map(lambda x: datetime.strptime(x, "%b %d %Y %I:%M%p"), date_strings))

print(datetime_objects)




Mengubah String Tanggal menjadi Objek datetime dengan Python

Python dengan perpustakaan panda

import pandas as pd

date_strings = ["Jun 1 2005 1:33PM", "Aug 28 1999 12:00AM"]
date_series = pd.Series(date_strings)

datetime_objects = pd.to_datetime(date_series, format="%b %d %Y %I:%M%p")

print(datetime_objects)



Menjelajahi Teknik Penguraian Tanggal Alternatif

Aspek penting lainnya dalam mengonversi string tanggal-waktu menjadi objek tanggal-waktu adalah menangani berbagai format tanggal-waktu yang mungkin muncul di kumpulan data Anda. Seringkali, data dari berbagai sumber mungkin tidak sesuai dengan satu format, sehingga memerlukan metode penguraian yang lebih fleksibel. Salah satu metode tersebut adalah dengan menggunakan modul, yang dapat mengurai berbagai format tanggal tanpa perlu menentukan formatnya secara eksplisit. Hal ini sangat berguna ketika berhadapan dengan sumber data yang beragam atau tidak konsisten.

Menggunakan fungsi menyederhanakan proses konversi dengan secara otomatis mendeteksi format tanggal. Pendekatan ini meminimalkan kebutuhan akan format string yang telah ditentukan sebelumnya dan mengurangi potensi kesalahan. Selain itu, untuk kumpulan data yang lebih kompleks, Anda dapat menggabungkan metode ini dengan teknik penanganan kesalahan untuk memastikan pemrosesan data yang kuat dan andal. Dengan mengeksplorasi teknik penguraian alternatif ini, pengembang dapat membuat skrip konversi tanggal-waktu yang lebih fleksibel dan tangguh yang melayani skenario data yang lebih luas.

  1. Bagaimana cara menangani format tanggal berbeda dalam daftar yang sama?
  2. Anda dapat menggunakan berfungsi untuk secara otomatis mendeteksi dan mengurai berbagai format tanggal.
  3. Bagaimana jika saya menemukan format tanggal yang tidak valid dalam daftar?
  4. Gunakan blok coba-kecuali di sekitar kode penguraian Anda untuk menangkap dan menangani pengecualian untuk format yang tidak valid.
  5. Bisakah saya mengonversi tanggal dengan zona waktu?
  6. Ya, itu dapat menangani string tanggal-waktu dengan informasi zona waktu.
  7. Bagaimana cara mengubah objek datetime kembali menjadi string?
  8. Menggunakan metode untuk memformat objek datetime sebagai string.
  9. Apakah ada cara untuk mempercepat penguraian daftar besar string tanggal-waktu?
  10. Pertimbangkan untuk menggunakan operasi vektor dengan untuk pemrosesan kumpulan data besar secara efisien.
  11. Bisakah saya menangani format tanggal yang dilokalkan?
  12. Ya, tentukan lokal dalam fungsi penguraian atau gunakan perpustakaan khusus lokal untuk menangani format tanggal yang dilokalkan.
  13. Bagaimana jika string tanggal saya berisi teks tambahan?
  14. Ekstrak bagian tanggal menggunakan ekspresi reguler sebelum menguraikan.
  15. Bagaimana cara menangani tanggal dengan pemisah berbeda?
  16. Itu fleksibel dengan pemisah dan dapat menangani berbagai pembatas.
  17. Bisakah saya mengurai tanggal dengan komponen yang hilang?
  18. Ya, itu dapat menyimpulkan komponen yang hilang seperti tahun berjalan jika tidak disediakan.

Kesimpulan Pemikiran tentang Konversi Tanggal-Waktu

Singkatnya, mengonversi string tanggal-waktu menjadi objek tanggal-waktu dengan Python dapat dicapai secara efisien menggunakan pendekatan berbeda seperti modul tanggal-waktu, pemahaman daftar, dan pustaka pandas. Setiap metode menawarkan keuntungan unik bergantung pada kompleksitas dan ukuran kumpulan data. Dengan memahami dan memanfaatkan teknik ini, pengembang dapat memastikan manipulasi tanggal-waktu yang akurat dan efisien, yang sangat penting untuk tugas analisis dan pemrosesan data.