df.values [:,1:]是什么?

问题描述

from sklearn.preprocessing import StandardScaler
X = df.values[:,1:] 
X = np.nan_to_num(X)
Clus_dataSet = StandardScaler().fit_transform(X)
Clus_dataSet

有人知道这种上下文的含义吗?

Here is the screenshot!!

解决方法

  • df是一个包含几列的DataFrame,目标值显然在第一列。

  • df.values返回一个numpy数组,其中包含DataFrame的基础数据,没有任何索引或列名。

  • [:,1:]是该数组的一部分,它返回所有行以及从第二列开始的每一列。 (第一列为索引0)

,

正如Richie在X = df.values[:,1:]中所说,您基本上使X等于数据框,但它跳过了第一列。

X = np.nan_to_num(X)将所有NaN值替换为数值。

Clus_dataSet = StandardScaler().fit_transform(X)标准化数据

Clus_dataSet返回数据集。

请小心,因为稍后使用X变量绘制数据时,必须从第二列索引数据。 X[0] = df[1]

例如:plt.scatter(X[:,0],X[:,3],s=area,c=labels.astype(np.float),alpha=0.5)

X[:,0]包含新变量的第一列,该列以前是df[:,1](如果有道理)。 Kinda很难解释。

,

df.values 是给我们数据帧值作为 numpy数组对象。 df.values [:,1:] 是一种通过索引访问所需值的方法,它表示数据帧中除第0个索引列以外的所有行和所有列。

,

此处的 Df 指的是您正在分析的数据框。

在代码的第二行 df.Values 仅用于返回值而不是数据框的索引。括号内的参数意味着您正在加载数据框的所有行并忽略索引位置 1 处的列(我假设这可能是因变量)。