我自己找到了一种从 pandas 数据框中删除 nan 行的方法。给定一个数据框dat
带柱x
其中包含 nan 值,是否有更优雅的方法来删除每一行dat
其中有一个 nan 值x
column?
dat = dat[np.logical_not(np.isnan(dat.x))]
dat = dat.reset_index(drop=True)
Use dropna https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.dropna.html:
dat.dropna()
您可以传递参数how
如果所有标签都是 nan 或任何标签都是 nan 则丢弃
dat.dropna(how='any') #to drop if any value in the row has a nan
dat.dropna(how='all') #to drop if all values in the row are nan
希望这能回答你的问题!
Edit 1:如果您想删除包含以下内容的行nan
仅来自特定列的值,正如 J. Doe 在下面的回答中所建议的,您可以使用以下内容:
dat.dropna(subset=[col_list]) # col_list is a list of column names to consider for nan values.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)