获取特定包中的数据集列表

问题描述 投票:32回答:5

我想获得控制台中显示的特定R包中所有数据集的列表。我知道函数data()将列出已加载包中的所有数据集。那不是我的目标。我想获取特定R包中所有数据集的列表。以下尝试不起作用。

data()
data('arules')
# Warning message:
# In data("arules") : data set ‘arules’ not found

我的另一个目的是获取特定程序包中所有数据集的dim列表。

r
5个回答
36
投票

help(data)的详细信息部分中对此有一些很好的信息。这里是基础知识,以plyr包为例。首先,让我们看看data()的可用内容。

names(data())
#[1] "title"   "header"  "results" "footer" 

对这些元素的进一步调查将揭示其中的内容。接下来,我们可以使用data()中的参数,然后对结果列表进行子集化以找到包中数据集的名称。

d <- data(package = "plyr")
## names of data sets in the package
d$results[, "Item"]
# [1] "baseball" "ozone"   
## assign it to use later
nm <- d$results[, "Item"]
## call the promised data
data(list = nm, package = "plyr")
## get the dimensions of each data set
lapply(mget(nm), dim)
# $baseball
# [1] 21699    22
#
# $ozone
# [1] 24 24 72

编辑/更新:如果要在all安装的软件包中查找数据集的名称,则可以使用以下内容。 .packages(TRUE)给出库位置路径lib.loc中所有可用的软件包。由于basestats包中的数据集已移至datasets包中,因此我们需要通过使用setdiff()将其取出来加以考虑。

## names of all packages sans base and stats
pkgs <- setdiff(.packages(TRUE), c("base", "stats"))
## get the names of all the data sets
dsets <- data(package = pkgs)$result[, "Item"]
## look at the first few in our result
head(dsets)
# [1] "AirPassengers"          "BJsales"                "BJsales.lead (BJsales)"
# [4] "BOD"                    "CO2"                    "ChickWeight"   

7
投票

vcdExtra软件包为此具有功能datasets。它返回一个数据框,其中包含在包中找到的每个数据集的名称,类,尺寸和标题。

> vcdExtra::datasets("plyr")
      Item      class      dim                                                        Title
1 baseball data.frame 21699x22 Yearly batting records for all major league baseball players
2    ozone      array 24x24x72             Monthly ozone measurements over Central America.
>

它也与几个包名称一起使用:

> vcdExtra::datasets(c("plyr", "dplyr"))
  Package     Item      class      dim
1    plyr baseball data.frame 21699x22
2    plyr    ozone      array 24x24x72
3   dplyr     nasa   tbl_cube  41472x4
                                                         Title
1 Yearly batting records for all major league baseball players
2             Monthly ozone measurements over Central America.
3                                    NASA spatio-temporal data
>

0
投票

如果您在R-studio中,并且已经导入了该软件包,则>]

您可以从全局环境切换到“环境”窗口中的特定程序包

然后您可以看到该包中的数据集列表


0
投票

如果要检查所有数据集的列表,请使用此命令


0
投票

[如果您想检查与已安装的软件包关联的数据集,请键入

© www.soinside.com 2019 - 2024. All rights reserved.