获取熊猫中NaN值的所有行和列位置[重复]

Posted

技术标签:

【中文标题】获取熊猫中NaN值的所有行和列位置[重复]【英文标题】:Get all Row and Columns Positions of NaN values in pandas [duplicate] 【发布时间】:2017-06-28 05:16:51 【问题描述】:

如何获取 Pandas 中有 NAN 值的所有位置。例如,

sample = pd.DataFrame(np.zeros(shape=[5,5]))
sample.iloc[0,0] = np.nan
sample.iloc[2,3] = np.nan
sample.iloc[4,3] = np.nan

是一个 Pandas 数据框,其中 (0,0)、(2,3) 和 (4,3) 等位置具有 nan 值。因此,我想要一个这样的元组列表

[(0,0),(2,3),(4,3)]

我能得到这个吗?

问候

【问题讨论】:

已有很多重复,请使用搜索功能。 或反转How to get row, column indices of all non-NaN items in Pandas dataframe 【参考方案1】:

在这种情况下,由于您的列和索引值是行号和列号,您可以首先使用 isnull 将每个条目转换为布尔值,然后使用 lambda 函数过滤括号中的真实值,然后将选定的索引到列表中。

sample.isnull().stack()[lambda x: x].index.tolist()
[(0, 0), (2, 3), (4, 3)]

【讨论】:

以上是关于获取熊猫中NaN值的所有行和列位置[重复]的主要内容,如果未能解决你的问题,请参考以下文章

显示 Pandas 数据框的所有行和列 [重复]

裁剪矩阵的 nan 行和列,但保持正方形

在 sqlite 查询中如何获取具有所需值的特定行和列

JavaFX:按行和列获取节点

熊猫:行和列总和的外积

如何在熊猫数据框列中获取 NaN 观察的频率 [重复]