Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Memilih Baris DataFrame Dengan Cekap Dalam Julat Tarikh Tertentu dalam Pandas?

Bagaimana untuk Memilih Baris DataFrame Dengan Cekap Dalam Julat Tarikh Tertentu dalam Pandas?

Patricia Arquette
Lepaskan: 2024-12-14 08:36:16
asal
329 orang telah melayarinya

How to Efficiently Select DataFrame Rows Within a Specific Date Range in Pandas?

Pilih Baris DataFrame Antara Dua Tarikh

Pengenalan

Apabila bekerja dengan data siri masa , selalunya perlu memilih baris tertentu berdasarkan julat tarikh. Artikel ini meneroka dua kaedah untuk mencapai ini dalam DataFrames panda.

Kaedah 1: Boolean Mask

  1. Pastikan lajur tarikh ialah Siri dengan dtype datetime64[ns]:

    df['date'] = pd.to_datetime(df['date'])
    Salin selepas log masuk
  2. Buat topeng boolean menggunakan operator perbandingan dengan tarikh mula dan tamat:

    mask = (df['date'] > start_date) & (df['date'] <= end_date)
    Salin selepas log masuk
  3. Pilih sub-DataFrame menggunakan topeng:

    df.loc[mask]
    Salin selepas log masuk
  4. Secara pilihan, tetapkan semula sub-DataFrame kepada df.

Kaedah 2: DatetimeIndex

  1. Tetapkan lajur tarikh sebagai indeks:

    df = df.set_index(['date'])
    Salin selepas log masuk
  2. Potong DataFrame menggunakan julat tarikh:

    df.loc[start_date:end_date]
    Salin selepas log masuk

Contoh

Pertimbangkan DataFrame dengan lajur tarikh. Kod berikut menggunakan kaedah topeng boolean untuk memilih baris antara '2000-06-01' dan '2000-06-10':

import pandas as pd

df = pd.DataFrame({
    'date': pd.date_range('2000-1-1', periods=200, freq='D'),
    'value': np.random.rand(200)
})

mask = (df['date'] > '2000-06-01') & (df['date'] <= '2000-06-10')
result_df = df[mask]
Salin selepas log masuk

Hasilnya termasuk baris dari 1 hingga 10 Jun, 2000.

Perbandingan

  • Kaedah topeng boolean lebih fleksibel dan membolehkan perbandingan tarikh yang lebih kompleks.
  • Kaedah DatetimeIndex lebih pantas untuk pilihan julat tarikh berulang.
  • Menggunakan parse_dates dalam pd.read_csv boleh menjimatkan keperluan untuk menukar lajur tarikh kepada datetime64s.

Atas ialah kandungan terperinci Bagaimana untuk Memilih Baris DataFrame Dengan Cekap Dalam Julat Tarikh Tertentu dalam Pandas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan