[R列清单比1
回答
的seq
命令执行此操作。执行seq(1,10,1)
做什么1:10
。但是,您可以将最后一个参数更改为其他参数,以便可以采取任意大小的步骤。
> #a vector of even numbers
> seq(0, 10, 2)
> [1] 0 2 4 6 8 10
另外,你所做的是一个矢量,而不是一个列表。一个列表可以包含许多完全不同类型的信息,而向量在索引的每个位置都包含相同类型的值。
由于R使用矩阵,所以可以使用标量乘法来修改向量中的每个元素。
> r <-c(0:10)
> r <- r * 2
> r
[1] 0 2 4 6 8 10 12 14 16 18 20
或
> r <-c(0:10)*2
> r
[1] 0 2 4 6 8 10 12 14 16 18 20
我认为特别是对于R和新手来说,除非你真的在谈论这些数据类型之一,否则不要抛弃“数组”,“列表”和“矩阵”这两个字。你创建的对象是一个向量。它不是矩阵或数组。 – adamleerich
是的,我滑倒并将矢量称为数组。我的坏 –
如果你想使用':' – useR
令我惊讶的是,@ Travis的解决方案速度相当快(4倍)。除非你做的东西真的很大(并且序列生成结果是限制因素),否则我仍然会投票支持seq
,因为它更容易阅读。
编辑:正如Marek指出的,seq.int
更快。
> library(rbenchmark) # Note spelling: "rbenchmark", not "benchmark"
> benchmark(seq(0,1e6,by=2),(0:5e5)*2,seq.int(0L,1e6L,by=2L))
test replications elapsed relative user.self sys.self
2 (0:5e+05) * 2 100 0.587 3.536145 0.344 0.244
1 seq(0, 1e+06, by = 2) 100 2.760 16.626506 1.832 0.900
3 seq.int(0, 1000000, by = 2) 100 0.166 1.000000 0.056 0.096
如果你需要快速解决方案,那么'seq.int(0L,1e6L,by = 2L)' – Marek
- 1. 清单中的R
- 2. 排序使用比较清单列表
- 3. 列表列表清单列表清单
- 4. Python的转置列清单列清单
- 5. Python - 列表清单清单列表
- 6. R dataframe集合清单
- 7. 如何清除GridView的列比指数1
- 8. 比较和删除清单
- 9. 与列表协调的比较里面列出清单
- 10. 将清单切入清单列表
- 11. 将清单预先列入清单
- 12. 合并阵列,0比1
- 13. 添加在R比列
- 14. 比较R中的多列
- 15. 比赛中列有R
- 16. R:1列或更多列的行数
- 17. csv列表清单?
- 18. Linq列表清单
- 19. GSON列表清单
- 20. coldfusion清单列表
- 21. 清单序列号
- 22. C#列表清单?
- 23. OCaml:列表清单
- 24. Ada - 列表清单
- 25. 购物清单没有列出/节省超过1个配方
- 26. Java列表清单列表
- 27. 列表清单列表
- 28. 如何在R中保存列表清单?
- 29. R:查找数据帧的列清单的最大/最小
- 30. 从清单列表中创建稀疏矩阵 - R
我敢打赌,通过扫描[手册]的前几十个条目,可以很快地发现问题的答案(http://cran.r-project.org/doc/manuals/R -intro.html)。 (提示:2.3) – joran