0.面向对象的操作逻辑&seq_along
Posted clclcl
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了0.面向对象的操作逻辑&seq_along相关的知识,希望对你有一定的参考价值。
没接触过面向对象的语言,运用R的时候还会保留一些过去的操作逻辑,比如构造循环啊什么的,这些东西R已经为你准备好了。
《O‘reilly-R》练习4.1:第n个三角形数表示为n*(n+1)/2。创建一个包含前20个三角形数的序列。R有一个内置常数letters,它包含小写的英文字母。使用前20个英文字母来给你刚刚创建的序列元素命名。选择命名为元音的三角形数。
1 n<-seq_len(20) 2 tri_num<-n*(n+1)/2 3 names(tri_nums)<-letters[seq_along(n)] 4 (tri_num[c("a","e","i","o")]
seq_along()要注意一下
官方给的解释:take the length from the length of this argument.
the length of this argument 的意思是什么?是创造一个和输入的值长度一样的序列吗?
不是
这里的长度指的是有点像matrix的length,这个变量中元素的数量。
n是一个20个元素的序列,所以这里创造了一个从1开始长度为20的序列
如果直接输入20的话,只会有一个元素被命名因为20就是的元素数量为1。
以上是关于0.面向对象的操作逻辑&seq_along的主要内容,如果未能解决你的问题,请参考以下文章