Cara membandingkan kurma di panda: dengan contoh
Anda dapat menggunakan metode berikut untuk membandingkan tanggal antara dua kolom di pandas DataFrame:
Metode 1: Tambahkan kolom baru ke DataFrame yang menampilkan perbandingan tanggal
df[' met_due_date '] = df[' comp_date '] < df[' due_date ']
Contoh khusus ini menambahkan kolom baru bernama met_due_date yang mengembalikan True atau False bergantung pada apakah tanggal di kolom comp_date sebelum tanggal di kolom due_date .
Metode 2: Filter DataFrame berdasarkan perbandingan tanggal
df_met_due_date = df[df[' comp_date '] < df[' due_date ']]
Contoh khusus ini memfilter DataFrame untuk hanya menyimpan baris yang tanggalnya di kolom comp_date lebih awal dari tanggal di kolom due_date .
Contoh berikut menunjukkan cara menggunakan masing-masing metode ini dalam praktik dengan pandas DataFrame berikut:
import pandas as pd #createDataFrame df = pd. DataFrame ({' task ': ['A', 'B', 'C', 'D'], ' due_date ': ['4-15-2022', '5-19-2022', '6-14-2022', '10-24-2022'], ' comp_date ': ['4-14-2022', '5-23-2022', '6-24-2022', '10-7-2022']}) #convert due_date and comp_date columns to datetime format df[[' due_date ', ' comp_date ']] = df[[' due_date ', ' comp_date ']]. apply (pd. to_datetime ) #view DataFrame print (df) task due_date comp_date 0 A 2022-04-15 2022-04-14 1 B 2022-05-19 2022-05-23 2 C 2022-06-14 2022-06-24 3 D 2022-10-24 2022-10-07
Contoh 1: Tambahkan kolom baru ke DataFrame yang menampilkan perbandingan tanggal
Kode berikut menunjukkan cara menambahkan kolom baru bernama met_due_date yang mengembalikan True atau False bergantung pada apakah tanggal di kolom comp_date sebelum tanggal di kolom due_date .
import pandas as pd #create new column that shows if completion date is before due date df[' met_due_date '] = df[' comp_date '] < df[' due_date '] #view updated DataFrame print (df) task due_date comp_date met_due_date 0 A 2022-04-15 2022-04-14 True 1 B 2022-05-19 2022-05-23 False 2 C 2022-06-14 2022-06-24 False 3 D 2022-10-24 2022-10-07 True
Untuk setiap baris di DataFrame, kolom met_due_date yang baru menunjukkan apakah tanggal di kolom comp_date sebelum tanggal di kolom due_date .
Misalnya, kita dapat melihat bahwa Tugas A memiliki tanggal jatuh tempo 15/04/2022 dan tanggal penyelesaian 14/04/2022.
Karena tanggal penyelesaian sebelum tanggal jatuh tempo, maka nilai kolom met_due_date adalah True.
Contoh 2: Filter DataFrame berdasarkan perbandingan tanggal
Kode berikut menunjukkan cara memfilter DataFrame agar hanya berisi baris yang tanggalnya di kolom comp_date sebelum tanggal di kolom due_date .
import pandas as pd #filter for rows where completion date is before due date df_met_due_date = df[df[' comp_date '] < df[' due_date ']] #view results print (df_met_due_date) task due_date comp_date 0 A 2022-04-15 2022-04-14 3 D 2022-10-24 2022-10-07
DataFrame baru telah difilter agar hanya berisi baris yang tanggalnya di kolom comp_date sebelum tanggal di kolom due_date .
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