如果已经问过这个问题我很抱歉(我还没有找到它)。我的印象是我可以使用data()
从数据集包中访问R中的数据集。但是,这对时间序列对象不起作用。还有其他例子,情况并非如此吗? (为什么?)
data("ldeaths") # no dice
ts("ldeaths") # works
(但是,这适用于data("austres")
,它也是一个时间序列对象)。
答案 0 :(得分:1)
data
函数用于加载包数据集及其所有属性,时间序列或其他。
我认为您遇到的问题是ldeaths
包中没有名为datasets
的独立数据集。 ldeaths
确实存在UKLungDeaths
数据集中的3个数据集中的1个。其他两个是fdeaths
和mdeaths
。
以下内容应该延迟加载所有数据集。
data(UKLungDeaths)
然后,在控制台中键入ldeaths
或在某个函数中将其用作参数将加载它。
str(ldeaths)
虽然包作者在1个数据集中包含多个对象并不常见,但确实会发生这种情况。 data
功能文档中的这一行提供了一个“抬头”的标题。关于这个:
"对于每个给定的数据集,前两种类型('.R'或'.r'和'.RData'或'.rda'文件)可以在加载环境中创建多个变量,可能都与数据集"
的命名方式不同这就是这种情况,因为虽然数据集中包含三个时间序列对象,但其中没有一个被命名为UKLungDeaths
。
当包作者使用save
函数将多个R对象写入外部文件时,会发生此选择。在野外,我已经看到人们使用save
函数将描述文件与数据集捆绑在一起,尽管这不是在完整的包中记录内容的正确方法。如果您真的很好奇,请阅读save
函数上的文档。
贾斯汀