可能重复:
为什么对象是向量?
请看我的代码:
> x=function(z){z+1}
> y=list(n1=1,n2="qwe",n3=TRUE,n4=x)
> is.vector(y)
[1] TRUE
Run Code Online (Sandbox Code Playgroud)
为什么是y矢量?n1是数字,n2是字符,n3是逻辑的,n4是一个函数.
它们是不同的,为什么是y矢量?当然y只能是一个清单?
> data
name sex age height
1 x1 F 18 162
2 x2 M 19 170
3 x3 M 21 178
4 x4 F 22 166
5 x5 F 23 165
> data[1,]
name sex age height
1 x1 F 18 162
> is.vector(data[1,])
[1] FALSE
Run Code Online (Sandbox Code Playgroud)
我对矢量感到困惑,为什么这里的数据[1,]不能成为一个矢量?
Rom*_*ain 10
您正在使用list它创建一个通用向量.列表可以包含不同类型的对象,并且本身就是向量.
从而is.vector给出了正确的答案.请参阅此处获取更多信息.
此外,如果您键入,fix(y)您将看到结构:
structure(
list(
n1 = 1,
n2 = "qwe",
n3 = TRUE,
n4 = function(z){z+1}
),
.Names = c("n1", "n2", "n3", "n4")
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
492 次 |
| 最近记录: |