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

Tambahkan komentar

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