考试报名
考试报名
考试内容
考试大纲
在线客服
返回顶部

备考刷题,请到

CDA认证小程序

基于密集向量(1.0, 0.0, 3.0)创建一个LabledPoint,设其标识值为1.0,以下正确的选项为( )
A. val pos = LabeledPoint(1.0, Vectors.dense(1.0, 0.0, 3.0))
B. val pos = LabeledPoint(1.0, (1.0, 0.0, 3.0))
C. val pos = LabeledPoint( Vectors.dense(1.0, 0.0, 3.0), 1.0)
D. val pos = LabeledPoint((1.0, 0.0, 3.0),1.0)
上一题
下一题
收藏
点赞
评论
题目解析
题目评论(0)

正确答案是:A: `val pos = LabeledPoint(1.0, Vectors.dense(1.0, 0.0, 3.0))`

### 分析:

- **LabeledPoint** 是一个用于存储标签和特征向量的数据结构,常用于机器学习库中,如Apache Spark的MLlib。

- **Vectors.dense(1.0, 0.0, 3.0)** 是用于创建密集型向量(dense vector)的正确方式,表示向量 (1.0, 0.0, 3.0)。

下面是对各个选项的分析:

- **A: `val pos = LabeledPoint(1.0, Vectors.dense(1.0, 0.0, 3.0))`**
- 这是正确的使用方式。首先创建一个标签为1.0的`LabeledPoint`,然后使用`Vectors.dense()`正确生成密集型向量。

- **B: `val pos = LabeledPoint(1.0, (1.0, 0.0, 3.0))`**
- 错误。这种写法直接将一个元组 (1.0, 0.0, 3.0) 作为参数传递,而不是使用`Vectors.dense()`,因此会导致编译错误。

- **C: `val pos = LabeledPoint(Vectors.dense(1.0, 0.0, 3.0), 1.0)`**
- 错误。参数顺序不正确,`LabeledPoint`的构造函数要求第一个参数是标签,第二个参数是特征向量。

- **D: `val pos = LabeledPoint((1.0, 0.0, 3.0),1.0)`**
- 错误。同B选项一样,将元组作为参数传递,而不是向量对象,会导致编译错误。

因此,只有选项A是正确的。