Pandas: cara menggabungkan kolom tanggal dan waktu


Anda dapat menggunakan sintaks berikut untuk menggabungkan kolom tanggal dan waktu pandas DataFrame menjadi satu kolom:

 df[' datetime '] = pd. to_datetime (df[' date '] + ' ' + df[' time '])

Perhatikan bahwa sintaks ini mengasumsikan bahwa kolom tanggal dan waktu keduanya adalah string saat ini.

Jika kedua kolom belum menjadi string, Anda dapat menggunakan astype(str) untuk mengonversinya menjadi string:

 df[' datetime '] = pd. to_datetime (df[' date ']. astype ( str ) + ' ' + df[' time ']. astype ( str ))

Contoh berikut menunjukkan cara menggunakan sintaksis ini dalam praktiknya.

Contoh: Gabungkan Kolom Tanggal dan Waktu di Pandas

Katakanlah kita memiliki panda DataFrame berikut yang berisi kolom tanggal dan kolom waktu:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' date ': ['10-1-2023', '10-4-2023', '10-6-2023', '10-6-2023',
                            '10-14-2023', '10-15-2023', '10-29-2023'],
                   ' time ': ['4:15:00', '7:16:04', '9:25:00', '10:13:45',
                            '15:30:00', '18:15:00', '23:15:00']})

#view DataFrame
print (df)

         date time
0 10-1-2023 4:15:00
1 10-4-2023 7:16:04
2 10-6-2023 9:25:00
3 10-6-2023 10:13:45
4 10-14-2023 15:30:00
5 10-15-2023 18:15:00
6 10-29-2023 23:15:00

Katakanlah kita ingin membuat kolom baru bernama datetime yang menggabungkan nilai dari kolom tanggal dan waktu .

Kita dapat menggunakan sintaks berikut untuk melakukan ini:

 #create new datetime column
df[' datetime '] = pd. to_datetime (df[' date '] + ' ' + df[' time '])

#view updated DataFrame
print (df)

         datetime datetime
0 10-1-2023 4:15:00 2023-10-01 04:15:00
1 10-4-2023 7:16:04 2023-10-04 07:16:04
2 10-6-2023 9:25:00 2023-10-06 09:25:00
3 10-6-2023 10:13:45 2023-10-06 10:13:45
4 10-14-2023 15:30:00 2023-10-14 15:30:00

Perhatikan bahwa kolom datetime yang baru telah berhasil menggabungkan nilai dari kolom tanggal dan waktu menjadi satu kolom.

Kita juga bisa menggunakan fungsi dtypes untuk memeriksa tipe data setiap kolom di DataFrame:

 #view data type of each column
df. dtypes

date object
time object
datetime datetime64[ns]
dtype:object

Dari hasilnya kita dapat melihat bahwa kolom tanggal dan waktu keduanya merupakan objek (yaitu string) dan kolom datetime yang baru adalah datetime.

Catatan : Anda dapat menemukan dokumentasi lengkap fungsi pandas to_datetime() di sini .

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan operasi umum lainnya di panda:

Cara membuat rentang tanggal di Pandas
Bagaimana cara mengubah stempel waktu menjadi tanggal/waktu di Pandas
Cara menghitung selisih dua kurma di panda

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *