Mengendalikan Nilai NaN Semasa Menukar Lajur Panda kepada Integer
Apabila bekerja dengan bingkai data Pandas, anda mungkin menghadapi situasi di mana anda perlu menukar lajur mengandungi nilai NaN kepada jenis data integer. Walau bagaimanapun, penukaran ini boleh membawa kepada ralat, kerana tatasusunan integer tidak dapat mengendalikan nilai yang hilang secara lalai.
Pendekatan Pengendalian Ralat
Anda telah mencuba dua pendekatan untuk menukar 'id ' lajur kepada integer, tetapi kedua-duanya telah mengakibatkan ralat:
Penyelesaian: Jenis Data Integer Nullable
Pandas versi 0.24 memperkenalkan konsep jenis data integer nullable. Ciri ini membenarkan tatasusunan integer mengandungi nilai yang hilang. Untuk menggunakan pendekatan ini:
import numpy as np # Create a nullable integer array arr = pd.array([1, 2, np.nan], dtype=pd.Int64Dtype()) # Create a Pandas Series from the array series = pd.Series(arr)
Siri yang terhasil akan mempunyai dtype 'Int64' dan akan membenarkan nilai NaN:
>>> series 0 1 1 2 2 NaN dtype: Int64
Menukar Lajur Panda
Untuk menukar lajur Pandas kepada jenis integer nullable:
df['myCol'] = df['myCol'].astype('Int64')
Ini akan menukar lajur 'myCol' kepada jenis data integer dengan nilai yang tiada diwakili sebagai NaN.
Atas ialah kandungan terperinci Bagaimana Mengendalikan Nilai NaN Apabila Menukar Lajur Pandas kepada Integer?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!