Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在R中列出连续的数字_R_List - Fatal编程技术网

在R中列出连续的数字

在R中列出连续的数字,r,list,R,List,我想列一个连续数字的列表,如下所示: list(1,2,3,4) 给出了四个列表 现在我不想写所有的数字,所以请尝试: list(1:4) 给出了长度为4的列表 如果我想在不写所有数字的情况下列出四个,那么语法是什么 请帮助,谢谢您可以使用as.list(1:4) [1]][1]1 [2][1]2 [3]][1]3 [4][1]4 编辑 或as.list(seq(4)) 编辑#2 下面是使用microbenchmark进行的速度比较: microbenchmark(as.list(1:4

我想列一个连续数字的列表,如下所示:

 list(1,2,3,4)
给出了四个列表

现在我不想写所有的数字,所以请尝试:

 list(1:4)
给出了长度为4的列表

如果我想在不写所有数字的情况下列出四个,那么语法是什么

请帮助,谢谢

您可以使用
as.list(1:4)

[1]][1]1

[2][1]2

[3]][1]3

[4][1]4

编辑 或
as.list(seq(4))

编辑#2 下面是使用
microbenchmark
进行的速度比较:

microbenchmark(as.list(1:4), as.list(seq(4)), Map(c,1:4), sapply(1:4, list), times=1e6)
Unit: microseconds
              expr   min    lq      mean median     uq      max neval
      as.list(1:4) 1.472 2.088  2.639712  2.314  2.584 32594.44 1e+06
   as.list(seq(4)) 3.934 5.359  6.514579  5.818  6.337 31498.31 1e+06
       Map(c, 1:4) 3.435 5.052  6.243628  5.516  6.041 32628.84 1e+06
 sapply(1:4, list) 6.892 9.358 11.282727 10.009 10.757 34269.70 1e+06
您可以使用
as.list(1:4)

[1]][1]1

[2][1]2

[3]][1]3

[4][1]4

编辑 或
as.list(seq(4))

编辑#2 下面是使用
microbenchmark
进行的速度比较:

microbenchmark(as.list(1:4), as.list(seq(4)), Map(c,1:4), sapply(1:4, list), times=1e6)
Unit: microseconds
              expr   min    lq      mean median     uq      max neval
      as.list(1:4) 1.472 2.088  2.639712  2.314  2.584 32594.44 1e+06
   as.list(seq(4)) 3.934 5.359  6.514579  5.818  6.337 31498.31 1e+06
       Map(c, 1:4) 3.435 5.052  6.243628  5.516  6.041 32628.84 1e+06
 sapply(1:4, list) 6.892 9.358 11.282727 10.009 10.757 34269.70 1e+06
我们可以用

sapply(1:4, list)
我们可以用

sapply(1:4, list)

您可以使用
Map

Map(c,1:4)
以致

> Map(c,1:4)
[[1]]
[1] 1

[[2]]
[1] 2

[[3]]
[1] 3

[[4]]
[1] 4

您可以使用
Map

Map(c,1:4)
以致

> Map(c,1:4)
[[1]]
[1] 1

[[2]]
[1] 2

[[3]]
[1] 3

[[4]]
[1] 4

如果将基准测试结果全部放在一个
microbenchmark()
调用中,那么阅读/比较基准测试结果会容易得多。@GregorThomas我认为这非常简单,但感谢您的建议-将更新。如果将基准测试结果全部放在一个
microbenchmark()中,那么阅读/比较基准测试结果会容易得多
打电话。@GregorThomas我认为这很简单,但谢谢你的建议-会更新的。