NumPy: calculate averages with NaNs removed

前端 未结 12 2530
慢半拍i
慢半拍i 2020-11-27 18:45

How can I calculate matrix mean values along a matrix, but to remove nan values from calculation? (For R people, think na.rm = TRUE).

Here

12条回答
  •  盖世英雄少女心
    2020-11-27 19:19

    How about using Pandas to do this:

    import numpy as np
    import pandas as pd
    dat = np.array([[1, 2, 3], [4, 5, np.nan], [np.nan, 6, np.nan], [np.nan, np.nan, np.nan]])
    print dat
    print dat.mean(1)
    
    df = pd.DataFrame(dat)
    print df.mean(axis=1)
    

    Gives:

    0    2.0
    1    4.5
    2    6.0
    3    NaN
    

提交回复
热议问题