data() 从哪里获取数据集描述?

Where does data() gets the data set description from?

不带参数调用 data 会生成可用数据集列表以及每个数据集的简短描述,例如:

!> data()
 Data sets in package ‘datasets’:

 AirPassengers           Monthly Airline Passenger Numbers 1949-1960
 BJsales                 Sales Data with Leading Indicator
 BJsales.lead (BJsales)
                         Sales Data with Leading Indicator
 BOD                     Biochemical Oxygen Demand
 ...

我写了一个包,其中包含一些 Rda 格式的数据文件(用 save() 制作)在包的 data/ 目录中,虽然 data() 找到了它们,但没有 说明。

!> data()
 Data sets in package ‘datasets’:

 AirPassengers           Monthly Airline Passenger Numbers 1949-1960
 BJsales                 Sales Data with Leading Indicator
 BJsales.lead (BJsales)
                         Sales Data with Leading Indicator
 BOD                     Biochemical Oxygen Demand
 ...

 Data sets in package ‘fbdata’:

 football.d1
 football.e0
 ...

如何包含对数据集的描述?

使用 ?promptData 或相应的 roxygen2 标记,为您的数据集生成 Rd 文件的骨架,然后对其进行适当编辑以添加描述,然后重建包裹...

正如@hrbrmaster 上面指出的那样,如果你真的 想要破解数据描述,你可以这样做(plyr 包的示例):

datadesc <- file.path(.libPaths()[1],"plyr","Meta","data.rds")
r <- readRDS(datadesc)
r
##      [,1]       [,2]                                                    
## [1,] "baseball" "Yearly batting records for all major league baseball players"
## [2,] "ozone"    "Monthly ozone measurements over Central America."
r[1,2] <- "hacked description"
saveRDS(r,datadesc)

...但我还没有真正测试过这个。

我不知道你的设置是什么,但我认为从长远来看 运行 定期重新构建和重新安装软件包实际上要安全得多(你不喜欢吗?更改版本号以便您可以轻松判断用户可以访问哪个版本的数据?)而不是以这种方式破解它...