python 相当于 R 的 NA 是啥?
Posted
技术标签:
【中文标题】python 相当于 R 的 NA 是啥?【英文标题】:What is python's equivalent of R's NA?python 相当于 R 的 NA 是什么? 【发布时间】:2015-04-23 15:04:25 【问题描述】:python 相当于 R 的 NA 是什么?
更具体地说: R 有 NaN、NA、NULL、Inf 和 -Inf。 NA 通常在缺少数据时使用。 python的等价物是什么?
numpy 和 pandas 等库如何处理缺失值?
scikit-learn 如何处理缺失值?
python 2.7 和 python 3 有区别吗?
【问题讨论】:
可能是None
,如果我理解正确的话。
Numpy 使用masked arrays。
【参考方案1】:
Scikit-learn 目前不处理缺失值。 对于大多数机器学习算法,尚不清楚如何处理缺失值,因此我们依赖于用户在将它们提供给算法之前对其进行处理。 Numpy 没有“缺失”值。 Pandas 使用 NaN,但在数值算法中可能会导致混淆。可以使用掩码数组,但我们在 scikit-learn 中还没有这样做。
【讨论】:
Pandas 中的 NaN 是 numpy 的 nan 值。【参考方案2】:nan
in numpy 处理得很好,有很多功能:
>>> import numpy as np
>>> a = [1, np.nan, 2, 3]
>>> np.nanmean(a)
2.0
>>> np.nansum(a)
6.0
>>> np.isnan(a)
array([False, True, False, False], dtype=bool)
【讨论】:
【参考方案3】:pandas
看看这个。
http://pandas.pydata.org/pandas-docs/dev/missing_data.html
熊猫使用NaN
。您可以使用isnull()
或not null()
测试空值,使用dropna()
等从数据框中删除它们。datetime
对象的等价物是NaT
【讨论】:
可能值得注意的是整数 pandasSeries
(或列)必须有值。没有办法表示整数系列中的缺失值;通常的替代方法是上转换为具有NaN
的浮点类型。以上是关于python 相当于 R 的 NA 是啥?的主要内容,如果未能解决你的问题,请参考以下文章