在R中一次打印许多变量

时间:2014-01-24 18:46:59

标签: r object

我从多个文件(source(file))加载了很多变量,我想逐个显示它的值。

实施例: 变量名称:mu1mu2mu3mu4。 我想用一个简单的R命令逐个打印它们。

编辑:我的变量不是字符串:

    > mu1
                 pvalue
{}              0.000000
{1}             0.054782
{2}             0.528427
{1,2}           0.416791

现在我要打印500个其他变量(mu1 ... m500)。

1 个答案:

答案 0 :(得分:4)

您可以使用mget一次获取多个变量的内容。

vars <- c("mu1", "mu2", "mu3", "mu4") # names of the variables

您还可以使用ls获取变量的名称:

vars <- ls(pattern = "^mu\\d+")

上述模式返回所有变量的名称,这些变量以mu开头,后跟至少一位数。

使用mget获取变量:

mget(vars)

返回打印的列表(以交互模式)。

一个例子:

> mu1 <- 1:3
> mu2 <- matrix(0, 2, 2)
> mu3 <- data.frame(a = 1:2, b = c("x", "y"))
> mu4 <- list(1, 2, 3)
> 
> vars <- c("mu1", "mu2", "mu3", "mu4")
> mget(vars)
$mu1
[1] 1 2 3

$mu2
     [,1] [,2]
[1,]    0    0
[2,]    0    0

$mu3
  a b
1 1 x
2 2 y

$mu4
$mu4[[1]]
[1] 1

$mu4[[2]]
[1] 2

$mu4[[3]]
[1] 3