Kaggle机器学习

时间:2020-04-21 03:49:54

标签: python

我刚刚开始学习机器学习 谁能解释一下这段代码的作用?

$HrEmployeeShift_opt = ArrayHelper::map(
    HrEmployeeShift::find()->where(
        [
            'IN',
            'Status',['Pasif', 'Rolling']
        ]
    )
    ->asArray()->all(), 'Id', 'Shift'
);

2 个答案:

答案 0 :(得分:0)

您的标题必须更加具体。 但是,此代码的第一行将创建一个具有为其指定形状的2D矩阵(张量),即y的第一维和标签的编号,其所有成员均为零。在像MATLAB这样的编程语言中,这称为预分配。您在其中预先分配一些数字的内存。 第二行告诉更改y1张量中的一些数字,这会将y1张量中的一些零更改为1。 第一部分是选择行,第二部分是选择列。 列为y,正在展平(当然,拉威尔有一些不同)。

答案 1 :(得分:0)

这是对 y 向量的单热编码。

因此,例如,如果 y 向量是

y = [2, 5, 3, 6]

然后

y1 = [[0, 1, 0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 1, 0, 0, 0, 0, 0],
[0, 0, 1, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 1, 0, 0, 0, 0]]

基本上如果 y 的第一个条目是 2,那么 y1 的第一行的第二个位置将等于 1。 由于 Python 是零索引的,这意味着第一个索引将等于 1。