日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

python之NAN和INF值處理方式_python

作者:靜默安然 ? 更新時間: 2022-07-02 編程語言

一、NAN和INF值處理

首先我們要知道這兩個英文單詞代表的什么意思:

  • NAN:Not A number,不是一個數字的意思,但是他是屬于浮點類型的,所以想要進行數據操作的時候需要注意他的類型。
  • INF:Infinity,代表的是無窮大的意思,也是屬于浮點類型。np.inf表示正無窮大,-np.inf表示負無窮大,一般在出現除數為0的時候為無窮大。比如2/0。

二、NAN一些特點

  • NAN和NAN不相等。比如np.NAN != np.NAN這個條件是成立的。
  • NAN和任何值做運算,結果都是NAN。

有些時候,特別是從文件中讀取數據的時候,經常會出現一些缺失值。缺失值的出現會影響數據的處理。因此我們在做數據分析之前,先要對缺失值進行一些處理。處理的方式有多種,需要根據實際情況來做。一般有兩種處理方式:刪除缺失值,用其他值進行填充。

三、兩種處理方式:刪除缺失值,用其他值進行填充

3.1刪除缺失值

3.1.1 將數組中的NAN刪掉,那么我們可以換一種思路,就是只提取不為NAN的值?

3.1.2 刪除NAN所在的行(刪除后還是二維數組)

3.2用其他值進行填充

有些時候我們不想直接刪掉,比如有一個成績表,分別是數學和英語,但是因為某個人在某個科目上沒有成績,那么此時就會出現NAN的情況,這時候就不能直接刪掉了,就可以使用某些值進行替代。

假如有以下表格:

數學 英語
59 89
90 32
78 45
34 NAN
NAN 56
23 56

如果想要求每門成績的總分,以及每門成績的平均分,那么就可以采用某些值替代。比如求總分,那么就可以把NAN替換成0,如果想要求平均分,那么就可以把NAN替換成其他值的平均值。示例代碼如下:

總結

1.NAN: Not A Number的簡寫,不是一個數字,但是他是屬于浮點類型。

2.INF:無窮大,在除數為0的情況下會出現INF。

3.NAN和所有的值進行計算結果都是等于NAN

4.NAN != NAN

5.可以通過np.isnan來判斷某個值是不是NAN。

6.處理值的時候,可以通過刪除NAN的形式進行處理,也可以通過值的替換進行處理。

7.np.delete比較特殊,他通過axis=0來代表行,而其他大部分函數是通過axis=1來代表行。

原文鏈接:https://blog.csdn.net/zhao2chen3/article/details/113746841

欄目分類
最近更新