Có cách nào để xóa giá trị NaN khỏi chuỗi gấu trúc không? Tôi có một bộ truyện có thể có hoặc không một số giá trị NaN trong đó và tôi muốn trả lại bản sao của bộ truyện đã xóa tất cả các giá trị NaN.
Có cách nào để xóa giá trị NaN khỏi chuỗi gấu trúc không? Tôi có một bộ truyện có thể có hoặc không một số giá trị NaN trong đó và tôi muốn trả lại bản sao của bộ truyện đã xóa tất cả các giá trị NaN.
Câu trả lời:
>>> s = pd.Series([1,2,3,4,np.NaN,5,np.NaN])
>>> s[~s.isnull()]
0 1
1 2
2 3
3 4
5 5
cập nhật hoặc thậm chí là cách tiếp cận tốt hơn như @DSM được đề xuất trong nhận xét, sử dụng pandas.Series.dropna()
:
>>> s.dropna()
0 1
1 2
2 3
3 4
5 5
Nếu bạn có một serie gấu trúc với NaN và muốn xóa nó (mà không làm mất chỉ mục):
serie = serie.dropna ()
# create data for example
data = np.array(['g', 'e', 'e', 'k', 's'])
ser = pd.Series(data)
ser.replace('e', np.NAN)
print(ser)
0 g
1 NaN
2 NaN
3 k
4 s
dtype: object
# the code
ser = ser.dropna()
print(ser)
0 g
3 k
4 s
dtype: object