首页 > 解决方案 > 我如何解释这个符号?

问题描述

符号s[s]如何以及为什么起作用?

我正在学习 kaggle.com 上的一门微课程,它们使用符号 s[s],如下所示。我以前没见过。X_train 是一个熊猫数据框。

它是一个切片本身的列表吗?有人会帮助澄清这一点吗?

s = (X_train.dtypes == 'object') ## assigns True to variables == 'object'
object_cols = list(s[s].index)
> s

Type              True
Method            True
Regionname        True
Rooms            False
Distance         False
Postcode         False
Bedroom2         False
Bathroom         False
Landsize         False
Lattitude        False
Longtitude       False
Propertycount    False
dtype: bool
> s[s]

Type          True
Method        True
Regionname    True
dtype: bool

标签: pythonpandas

解决方案


这是相当复杂的。

X_train 是一个熊猫数据框。

X_train.dtypes 返回一个熊猫系列,其中索引(每行的名称)等于列名。

我们现在对返回新系列的系列执行 ==,其值为 true 或 false。所以它看起来像:

a True b False c True

现在我们得到 x[x] ,它表示要删除“假”值,给出一个新的系列:

a True c True

现在我们做 .index 并把它变成一个列表给

['a', 'c' ]


推荐阅读