Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah saya boleh menggantikan nilai NaN dalam Pandas DataFrames dengan berkesan?

Bagaimanakah saya boleh menggantikan nilai NaN dalam Pandas DataFrames dengan berkesan?

Susan Sarandon
Susan Sarandonasal
2024-12-03 20:16:10319semak imbas

How can I effectively replace NaN values in Pandas DataFrames?

Menggantikan Nilai NaN dalam Lajur Bingkai Data

Apabila bekerja dengan DataFrames dalam Pandas, data yang hilang atau tidak sah boleh diwakili oleh nilai NaN. Untuk memastikan kualiti data dan mengelakkan ralat, selalunya perlu menggantikan nilai NaN ini dengan pemegang tempat atau imputasi yang sesuai.

Kaedah DataFrame.fillna()

Yang paling mudah kaedah untuk menggantikan nilai NaN menggunakan kaedah fillna(). Ia memerlukan nilai atau kamus sebagai hujah dan menggantikan semua nilai NaN dalam lajur yang ditentukan atau keseluruhan DataFrame dengan nilai yang disediakan.

Contoh:

import pandas as pd

df = pd.DataFrame({
    "itm": [420, 421, 421, 421, 421, 485, 485, 485, 485, 489, 489],
    "Date": ["2012-09-30", "2012-09-09", "2012-09-16", "2012-09-23", "2012-09-30", 
             "2012-09-09", "2012-09-16", "2012-09-23", "2012-09-30", "2012-09-09", "2012-09-16"],
    "Amount": [65211, 29424, 29877, 30990, 61303, 71781, float("NaN"), 11072, 113702, 64731, float("NaN")]
})

df.fillna(0)

Output:

       itm       Date    Amount
0     420  2012-09-30    65211
1     421  2012-09-09    29424
2     421  2012-09-16    29877
3     421  2012-09-23    30990
4     421  2012-09-30    61303
5     485  2012-09-09    71781
6     485  2012-09-16      0.0
7     485  2012-09-23   11072.0
8     485  2012-09-30  113702.0
9     489  2012-09-09    64731
10    489  2012-09-16      0.0

Tambahan Kaedah:

Walaupun fillna() adalah yang paling biasa, terdapat beberapa kaedah lain yang boleh digunakan untuk menggantikan nilai NaN:

  • .replace() : Kaedah ini boleh digunakan untuk menggantikan nilai NaN dengan nilai tertentu atau a mask.
  • .interpolate(): Kaedah ini menggunakan pelbagai teknik interpolasi untuk menganggar nilai yang hilang.
  • .pivot_table(): Ini kaedah boleh digunakan untuk mengumpulkan dan mengagregat data, mengabaikan data yang hilang nilai.

Kesimpulan:

Menggantikan nilai NaN dalam DataFrames adalah penting untuk pembersihan dan manipulasi data. Dengan menggunakan kaedah yang diterangkan di atas, anda boleh mengendalikan data yang hilang atau tidak sah dengan berkesan, memastikan integriti dan kualiti analisis data anda.

Atas ialah kandungan terperinci Bagaimanakah saya boleh menggantikan nilai NaN dalam Pandas DataFrames dengan berkesan?. 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