Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menggantikan Nilai NaN dalam Pandas DataFrame dengan Purata Lajur?

Bagaimana untuk Menggantikan Nilai NaN dalam Pandas DataFrame dengan Purata Lajur?

Linda Hamilton
Linda Hamiltonasal
2024-10-30 07:01:28198semak imbas

How to Replace NaN Values in a Pandas DataFrame with Column Averages?

Pandas DataFrame: Menggantikan Nilai NaN dengan Purata Lajur

Dalam panda DataFrames, pengendalian data yang hilang adalah penting untuk analisis yang tepat. Apabila berhadapan dengan data yang tidak lengkap, menggantikan nilai NaN dengan anggaran bermakna menjadi perlu. Artikel ini menunjukkan cara untuk menggantikan nilai NaN dengan purata lajur masing-masing dalam DataFrame panda.

Masalah

Pertimbangkan DataFrame dengan campuran nombor nyata dan nilai NaN. Matlamatnya adalah untuk menggantikan nilai NaN dengan nilai purata lajur di mana ia muncul.

Penyelesaian

Tidak seperti dalam tatasusunan NumPy, pengisian nilai NaN dalam panda DataFrames boleh dikendalikan dengan cekap menggunakan kaedah fillna:

<code class="python">df.fillna(df.mean())</code>

Kaedah ini mengisi nilai NaN dengan min bagi lajur yang sepadan. Contohnya:

<code class="python">df = pd.DataFrame({'A': [-0.166919, -0.297953, -0.120211, np.nan, np.nan, -0.788073, -0.916080, -0.887858, 1.948430, 0.019698],
                   'B': [0.979728, -0.912674, -0.540679, -2.027325, np.nan, np.nan, -0.612343, 1.033826, 1.025011, -0.795876],
                   'C': [-0.632955, -1.365463, -0.680481, 1.533582, 0.461821, np.nan, np.nan, np.nan, -2.982224, -0.046431]})

mean = df.mean()
print(df.fillna(mean))</code>

Output:

          A         B         C
0 -0.166919  0.979728 -0.632955
1 -0.297953 -0.912674 -1.365463
2 -0.120211 -0.540679 -0.680481
3 -0.151121 -2.027325  1.533582
4 -0.151121 -0.231291  0.461821
5 -0.788073 -0.231291 -0.530307
6 -0.916080 -0.612343 -0.530307
7 -0.887858  1.033826 -0.530307
8  1.948430  1.025011 -2.982224
9  0.019698 -0.795876 -0.046431

Nilai NaN telah digantikan dengan nilai purata lajur masing-masing.

Atas ialah kandungan terperinci Bagaimana untuk Menggantikan Nilai NaN dalam Pandas DataFrame dengan Purata Lajur?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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