如何在 python 中删除带有 nan 值的行

我有一个带有 nan 值的数据数组

https://img1.sycdn.imooc.com/65269eed0001dca005980234.jpg

我想删除带有 nan 值的行。我想要这个输出:

https://img1.sycdn.imooc.com/65269ef5000106eb06010143.jpg

仅保留没有 nan 值的行。

我尝试使用此代码

input = input[~np.isnan(input)]

但是,这些行没有删除。

我也用了

a = input[complete.cases(input), ]

但是发生了错误。名称错误:未定义名称“完整”


至尊宝的传说
浏览 123回答 3
3回答

江户川乱折腾

数据帧:   values_1  values_20     700.0       NaN1       NaN     150.02     500.0     350.03       NaN     400.04    1200.0    5000.0你可以试试这个:df = df.dropna()df = df.reset_index(drop=True)输出:   values_1  values_20     500.0     350.01    1200.0    5000.0

慕哥9229398

给定 numpy 数组为import numpy as np input = np.array([[1,1,0,np.nan], [1,1,1,30], [1,0,1,np.nan]])尝试output = input[~np.isnan(input).any(axis=1)]给出输出为[[ 1.  1.  1. 30.]]

暮色呼如

试试这个input = input[~np.isnan(input).any(axis=1)]any(axis=1) 将 m*n 数组减少到 n,并对整行进行逻辑或操作。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python