yus*_*suf 4 python numpy matrix
我有一个NumPy类似下面的矩阵:
[[182 93 107 ..., nan nan -1]
[182 93 107 ..., nan nan -1]
[182 93 110 ..., nan nan -1]
...,
[188 95 112 ..., nan nan -1]
[188 97 115 ..., nan nan -1]
[188 95 112 ..., nan nan -1]]
Run Code Online (Sandbox Code Playgroud)
我想删除仅涉及nan上述矩阵的值的列.
我怎样才能做到这一点?谢谢.
假设您的数组float现在是s,您可以识别所有NaN列并使用花式索引来检索其他列:
d
array([[ 182., 93., 107., nan, nan, -1.],
[ 182., 93., 107., 4., nan, -1.],
[ 182., 93., 110., nan, nan, -1.],
[ 188., 95., 112., nan, nan, -1.],
[ 188., 97., 115., nan, nan, -1.],
[ 188., 95., 112., nan, nan, -1.]])
d[:,~np.all(np.isnan(d), axis=0)]
array([[ 182., 93., 107., nan, -1.],
[ 182., 93., 107., 4., -1.],
[ 182., 93., 110., nan, -1.],
[ 188., 95., 112., nan, -1.],
[ 188., 97., 115., nan, -1.],
[ 188., 95., 112., nan, -1.]])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3368 次 |
| 最近记录: |