處理陣列中的nan,用這一列的平均值去替換

2021-10-11 16:55:23 字數 1285 閱讀 4876

在jupyter 裡面寫的

# 練習!!!!--

----

-處理陣列中的nan

t = np.

arange(24

).reshape(4

,6).

astype

('float'

)print

(t)# 將陣列中的一部分替換成nant[1

,3:]

=np.nan

print

(t)# 遍歷每一列,然後判斷每一列是否有nan

for i in

range

(t.shape[1]

):col = t[

:,i] # 獲取當前列資料

# 判斷當前列的資料中是否含有nan ################importance

nan_col = np.

count_nonzero

(col != col)

if nan_col !=

0: # 條件成立說明含有nan

not_nan = col[col == col] # 找出不含nan的

col[np.

isnan

(col)

]= np.

mean

(not_nan) # 將nan替換成這一列的平均值

print

(t)

輸出結果:

[[0.

1.2.

3.4.5.]

[6.7.8.

9.10.

11.]

[12.

13.14.

15.16.

17.]

[18.

19.20.

21.22.

23.]][

[0.1.2.

3.4.5.]

[6.7.8. nan nan nan]

[12.

13.14.

15.16.

17.]

[18.

19.20.

21.22.

23.]][

[0.1.2.

3.4.5.]

[6.7.8.

13.14.

15.]

[12.

13.14.

15.16.

17.]

[18.

19.20.

21.22.

23.]

]

用乙個表中的一列值更新另外一表中的一列值

今天寫乙個小儲存過程,呵呵!功能大家試一下就知道了。create proc proc test uid int 0 output,uname nvarchar 50 null output asbegin declare dd cursor scroll for select uid,uname f...

js 加總陣列中某一列 js中的陣列中的陣列相加

在mvc中view中遇到了這個問題,就是js中數字相加的時候,老是加不到一起 function table var z 0 for var i 0 i 3 i z.push i 試了用z i alert z 上面兩種方法都不是正確的,正確的應該是這樣的 function table var z 0 ...

用陣列公式從一列中提取包含指定內容的資料

通常在excel中要從一列中提取包含指定內容的資料,可以用自動篩選中的自定義篩選,並設定所包含的字元。如果要用公式來實現這種類似篩選的效果,可以在陣列公式中用search函式來查詢所包含的字元。假如在a2 a100區域中包含一些成語,要從中提取包含 一 字的成語。在b2單元格中輸入陣列公式 inde...