Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Mengisi Nilai Hilang dalam Panda dengan Min Kumpulan?

Bagaimana untuk Mengisi Nilai Hilang dalam Panda dengan Min Kumpulan?

Linda Hamilton
Lepaskan: 2024-12-11 12:58:11
asal
516 orang telah melayarinya

How to Fill Missing Values in Pandas with the Group Mean?

Mengisi Nilai Yang Hilang dengan Min dalam Setiap Kumpulan dalam Panda

Dalam konteks ini, objektif anda adalah untuk mengisi nilai yang hilang ("NaN" ) dengan nilai min untuk setiap kumpulan berbeza dalam lajur "nama". Untuk mencapai matlamat ini, anda boleh menggunakan fungsi transformasi Pandas bersama-sama dengan kaedah fillna.

Mari kita pertimbangkan contoh DataFrame yang disediakan:

df = pd.DataFrame({
    'value': [1, np.nan, np.nan, 2, 3, 1, 3, np.nan, 3],
    'name': ['A','A', 'B','B','B','B', 'C','C','C']
})

# Original DataFrame
print(df)
Salin selepas log masuk

Untuk mengira nilai min dalam setiap "nama" kumpulan, anda boleh menggunakan fungsi kumpulan mengikut:

grouped = df.groupby('name').mean()
Salin selepas log masuk

Walau bagaimanapun, dikumpulkan ialah DataFrame yang mengandungi nilai min, dan kita perlu menggunakannya kembali pada DataFrame asal untuk mengisi nilai yang tiada. Di sinilah transformasi menjadi berguna:

df["value"] = df.groupby("name").transform(lambda x: x.fillna(x.mean()))
Salin selepas log masuk

Berikut ialah pecahan kod:

  • df.groupby("name") mengumpulkan DataFrame mengikut lajur "nama".
  • lambda x: x.fillna(x.mean()) mentakrifkan fungsi tanpa nama yang mengambil setiap kumpulan (diwakili oleh x) sebagai input dan melaksanakan operasi berikut:

    • Ia mengisi nilai yang tiada ("NaN") dengan nilai min yang dikira menggunakan x.mean().
  • df["value"] menggantikan lajur "value" dalam DataFrame asal dengan nilai diubah yang mengisi yang tiada nilai.

Selepas melaksanakan kod, DataFrame yang terhasil akan mengandungi nilai yang diisi seperti yang dikehendaki:

# Adjusted DataFrame
print(df)
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Mengisi Nilai Hilang dalam Panda dengan Min Kumpulan?. 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