month <- c(1:12,1:11,1:9,1:12) sales <- unlist(mapply(rep,x=1:4,times=c(12,11,9,12))) df2 <- data.frame(month,sales,stringsAsFactors=F) tapply(df2sales,df2sales,df2month,sum) 这段代码的前三句是什么意思啊?

0
已邀请:
0

谢佳标 - 微软中国MVP,多届中国R语言大会演讲嘉宾。 从事数据挖掘建模工作已有10年, 曾经从事过咨询、电商、电购、电力、游戏、金融等行业,了解不同领域的数据特点。 有丰富的利用R语言进行数据挖掘实战经验。 合著《R语言与数据挖掘》及《数据实践之美》等书籍,均在京东有卖。此外《R语言游戏数据分析与挖掘》预计将在2017年上半年出版。 2016-10-17 回答

第一句month <- c(1:12,1:11,1:9,1:12),创建一个向量对象month,内容如下:
[1]  1  2  3  4  5  6  7  8  9 10 11 12  1  2  3  4  5  6  7  8  9 10 11  1  2  3  4  5  6
[30]  7  8  9  1  2  3  4  5  6  7  8  9 10 11 12
第二句 sales <- unlist(mapply(rep,x=1:4,times=c(12,11,9,12))),创建一个重复序列的向量。sales内容如下:
[1] 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4
[44] 4
第二句命令可以用rep(1:4,times=c(12,11,9,12))简化。
第三句 df2 <- data.frame(month,sales,stringsAsFactors=F) 是通过data.frame将两个向量组成数据框,且设置stringsAsFactors=F表示字符串不转换成因子型。

要回复问题请先登录注册