数字的直观解释.在哪里



我正在学习机器学习,在课本上偶然发现了这个numpy.where语句:

housing["income_cat"] = np.ceil(housing["median_income"] / 1.5)
housing["income_cat"].where(housing["income_cat"] < 5, 5.0, inplace=True)

基本上,该代码将收入中位数划分为不同的类别,并将其划分为单独的类别(income _cat代表income _category(。然而,我不明白的是应该如何解释哪里:

我想是这样的:对于housing["income_cat"] <5的值,那么。。但随后在第二自变量中出现5并且在第三自变量中出现CCD_ 2。

有人能帮我弄清楚吗?谢谢

.where()方法在Pandas Series类中定义。

在您引用的调用中,前两个参数是位置参数,因此它们映射到condother变量。当条件cond计算为False时,other的值为usd。

例如:

>>> import pandas as pd
>>> column = pd.Series(data=(1,2,3))
>>> column.where(column > 2, -1)
0   -1
1   -1
2    3
dtype: int64

对于该系列的前两个元素,条件column > 2的计算结果为False。在那里,它被-1取代。

inplace=True设置确保操作不会返回新对象,而是就地更改对象,这是对性能的考虑,但也有可跟踪性的缺点。

最新更新