Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Mengulang Baris dalam Bingkai Data Pandas dengan Cekap?

Bagaimanakah Saya Mengulang Baris dalam Bingkai Data Pandas dengan Cekap?

Barbara Streisand
Lepaskan: 2024-12-23 20:37:11
asal
348 orang telah melayarinya

How Do I Iterate Over Rows in a Pandas DataFrame Efficiently?

Meletup Melewati Baris dalam Pandas DataFrame

Meletup pada baris dalam Pandas DataFrame membolehkan anda mengakses baris individu dan elemennya. Untuk mencapai matlamat ini, Pandas menyediakan dua kaedah yang biasa digunakan: DataFrame.iterrows dan DataFrame.T.iteritems().

DataFrame.iterrows:

DataFrame.iterrows ialah penjana yang menghasilkan kedua-dua indeks baris dan baris itu sendiri diwakili sebagai Siri Panda. Coretan kod berikut menunjukkan penggunaannya:

import pandas as pd
df = pd.DataFrame({'c1': [10, 11, 12], 'c2': [100, 110, 120]})

for index, row in df.iterrows():
    print(row['c1'], row['c2'])
Salin selepas log masuk

Ini akan menghasilkan:

10 100
11 110
12 120
Salin selepas log masuk

DataFrame.T.iteritems():

DataFrame.T.iteritems() berulang pada lajur DataFrame. Memindahkan DataFrame menggunakan .T dan menggunakan .iteritems() menghasilkan kedua-dua nama lajur dan baris sebagai Siri. Ambil perhatian bahawa pendekatan ini secara amnya kurang cekap berbanding iterrow:

for column_name, row in df.T.iteritems():
    print(column_name, row['c1'], row['c2'])
Salin selepas log masuk

Ini akan menghasilkan:

c1 10 11 12
c2 100 110 120
Salin selepas log masuk

Pertimbangan Prestasi:

Lelaran berakhir objek panda biasanya lebih perlahan daripada operasi vektor atau aplikasi fungsi menggunakan kaedah apply(). Jika prestasi adalah penting, pertimbangkan untuk menggunakan cython atau numba untuk meningkatkan prestasi operasi berulang.

Atas ialah kandungan terperinci Bagaimanakah Saya Mengulang Baris dalam Bingkai Data Pandas dengan Cekap?. 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