Pandalar: i̇ki tarih arasındaki satırlar nasıl seçilir?


Bir pandas DataFrame’de iki belirli tarih arasındaki satırları seçmek için aşağıdaki sözdizimini kullanabilirsiniz:

 df[df. date . between (' 2022-01-02 ', ' 2022-01-06 ')]

Bu özel örnek, 01/02/2022 ile 01/06/2022 tarihleri arasında DataFrame’deki tüm satırları seçer.

Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.

Örnek: Pandalar’da iki tarih arasındaki satırları seçin

Aşağıdaki pandalara sahip olduğumuzu varsayalım DataFrame:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' date ': pd. date_range (start=' 1/1/2022 ', periods= 8 ),
                   ' sales ': [18, 20, 15, 14, 10, 9, 8, 12],
                   ' returns ': [5, 7, 7, 9, 12, 3, 2, 4]})

#view DataFrame
print (df)

        date sales returns
0 2022-01-01 18 5
1 2022-01-02 20 7
2 2022-01-03 15 7
3 2022-01-04 14 9
4 2022-01-05 10 12
5 2022-01-06 9 3
6 2022-01-07 8 2
7 2022-01-08 12 4

Yalnızca 01/02/2022 ile 01/06/2022 tarihleri arasındaki satırları seçmek için aşağıdaki sözdizimini kullanabiliriz:

 #select all rows where date is between 2022-01-02 and 2022-01-06
df[df. date . between (' 2022-01-02 ', ' 2022-01-06 ')]

              date sales returns
1 2022-01-02 20 7
2 2022-01-03 15 7
3 2022-01-04 14 9
4 2022-01-05 10 12
5 2022-01-06 9 3

Yalnızca 2022-01-02 ve 2022-01-06 tarihleri arasındaki satırların seçildiğini unutmayın.

İsterseniz başlangıç ve bitiş tarihlerini Among() işlevinin dışında da ayarlayabilirsiniz:

 #define start and end dates
start_date = ' 2022-01-02 '
end_date = ' 2022-01-06 '

#select all rows where date is between start and end
df[df. date . between (start_date, end_date)]


              date sales returns
1 2022-01-02 20 7
2 2022-01-03 15 7
3 2022-01-04 14 9
4 2022-01-05 10 12
5 2022-01-06 9 3

Bu aynı sonucu doğurur.

Tarih sütununuz tanınabilir bir tarihsaat biçiminde değilse, onu tarihsaat biçimine dönüştürmek için öncelikle aşağıdaki kodu kullanmanız gerekebileceğini unutmayın:

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

Bunu yaptıktan sonra, belirli tarihler arasındaki satırları seçmek için Among() işlevini kullanabilirsiniz.

Ek kaynaklar

Aşağıdaki eğitimlerde pandalarda diğer yaygın işlemlerin nasıl gerçekleştirileceği açıklanmaktadır:

Pandalar’da tarih aralığı nasıl oluşturulur?
Pandalar’da tarihten ay nasıl çıkarılır
Pandalar’da zaman damgasını tarih/saat’e dönüştürme

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir