无论如何我能找到特定数据集所属的包吗?例如,数据集“UScereal”属于哪个包?
提前多多感谢。
答案 0 :(得分:10)
这是find()
函数的用途。
> find("iris")
[1] "package:datasets"
> find("UScereal")
[1] "package:MASS"
如果某个对象位于搜索路径中,find()
会告诉您它来自哪里。有关详细信息,请参阅?find
。
要获取有关特定数据集的更多信息,您还可以使用?UScereal
,如果UScereal
位于搜索路径中,则会有效;如果不是??UScereal
,则可以使用{{1}}但它的父包已安装。
要查找未安装的软件包中的数据集,您可以在RDocumentation.org上搜索该数据集。
答案 1 :(得分:3)
您可以尝试??UScerial
。这将搜索所有帮助文件和文档,以匹配" UScerial"并告诉你它来自哪个包。例如,在我的机器上,我得到MASS::UScereal
。
(如果您的计算机上没有安装该软件包,这将无法正常工作,但如果它安装在您的计算机上但未加载,它将无效。)
答案 2 :(得分:3)
一种方法是为所有已安装的软件包拉出数据集数据库,然后查询您要查找的数据。
x <- data(package = .packages(all.available = TRUE))$results
x[grep("UScereal",x[,"Item"]),]
Package
"MASS"
LibPath
"C:/Program Files/R/R-3.0.2/library"
Item
"UScereal"
Title
"Nutritional and Marketing Information on US Cereals"
显然,这需要您已安装该软件包。如果您还没有,那么您必须在网上搜索正确的包裹。