这种语言使我困惑.实体有modes和classes,但即使这样也不足以充分描述实体.
这个answer表示
在R中,每个"对象"都有一个模式和一个类.
所以我做了这些实验:
> class(3)
[1] "numeric"
> mode(3)
[1] "numeric"
> typeof(3)
[1] "double"
到目前为止还不错,但后来我通过了一个向量:
> mode(c(1,2))
[1] "numeric"
> class(c(1,2))
[1] "numeric"
> typeof(c(1,2))
[1] "double"
这没有道理.一个整数向量应该和一个整数有不同的类,或者不同的模式?我的问题是:
- R里的所有东西都有(正好一个)class吗?
- R里的所有东西都有(正好一个)mode吗?
- "typeof"告诉我们什么?
- 完整描述实体还需要哪些其他信息?(例如,"矢量"存储在哪里?)
Update:显然,文字3只是长度为1的向量.没有标量.好吧,但是...我try 了mode("string")
,得到了"character"
,这让我觉得字符串是一个字符向量.但如果这是真的,那么这应该是真的,但事实并非如此!c('h','i') == "hi"