1. 程式人生 > >0.面向對象的操作邏輯&seq_along

0.面向對象的操作邏輯&seq_along

spa long 裏的 color 運用 pre argument The 過去

沒接觸過面向對象的語言,運用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