-1

我做了一个匿名函数来选择向量的第一个元素然后选择向量的最后一个元素。当我选择最后一个元素时,它说不正确。当我选择第二个元素时,它说正确。我正在跟踪 R 是基于 1 的。不是基于零的。所以当我选择向量的最后一个元素时,它不应该是 x[3] 吗???

第一部分:我的功能,我用来选择每个问题的第一个元素。 | 尝试使用 evaluate() 和匿名函数来返回 | 的第一个元素 向量 c(8, 4, 0)。你的匿名函数应该只接受一个参数 应该是一个变量x

评估(函数(x){x[1]}, c(8, 4, 0)) [1] 8

| 你说对了!

问题的第二部分:选择向量的最后一个元素

| 现在尝试使用 evaluate() 和匿名函数来返回最后一个元素 | 向量 c(8, 4, 0) 的。你的匿名函数应该只接受一个参数 应该是一个变量x

评估(函数(x){x[3]}, c(8, 4, 0)) [1] 0

| 这不正是我要找的。再试一次。或者,键入 info() 以获取更多选项。

| 您可能需要回忆如何索引向量元素。请记住,您的匿名 | 函数应该只有一个参数,并且该参数应该命名为x. 使用 | 匿名函数中的 length() 函数可能会对您有所帮助。

评估(函数(x){x[2]}, c(8, 4, 0)) [1] 4

| 你真的很成功!

到底是什么,我不得不使用 x[2] 来选择向量的最后一个元素。为什么不是 x[3]?

我现在在 R 中使用 Swirl。

4

1 回答 1

0

Swirl 所期望的是使用length()参数来查找向量中的最后一个元素,如下所示:

evaluate(function(x){x[length(x)]}, c(8, 4, 0))

此练习在R 编程漩涡课程的第 9 单元中。大约 2/3 的课,我复制了正确的答案。

在此处输入图像描述

于 2020-05-30T02:59:43.203 回答