我有一个带有 nan 值的数据数组我想删除带有 nan 值的行。我想要这个输出:仅保留没有 nan 值的行。我尝试使用此代码input = input[~np.isnan(input)]但是,这些行没有删除。我也用了a = input[complete.cases(input), ]但是发生了错误。名称错误:未定义名称“完整”
3 回答
江户川乱折腾
TA贡献1851条经验 获得超5个赞
数据帧:
values_1 values_2
0 700.0 NaN
1 NaN 150.0
2 500.0 350.0
3 NaN 400.0
4 1200.0 5000.0
你可以试试这个:
df = df.dropna()
df = df.reset_index(drop=True)
输出:
values_1 values_2
0 500.0 350.0
1 1200.0 5000.0
慕哥9229398
TA贡献1877条经验 获得超6个赞
给定 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.]]
暮色呼如
TA贡献1853条经验 获得超9个赞
试试这个
input = input[~np.isnan(input).any(axis=1)]
any(axis=1) 将 m*n 数组减少到 n,并对整行进行逻辑或操作。
添加回答
举报
0/150
提交
取消