循环中的问题(视频1分35秒)

来源:3-1 .循环和控制流-新版

慕用3301853

2018-08-23 22:13

> d <- data.frame(a = 1:3, b = 3:8)

> for (x in d) {

+     cat("column sum:", sum(x),"\n")

+ }

column sum: 12 

column sum: 33 


这个函数我理解是为每一行加和,第一行应该是 sum(1:3)=6,不应该是12啊。。。

写回答 关注

1回答

  • 是木头呀
    2018-10-05 14:33:41

    d中a与b的长度不同,b的长度是a的两倍,R自动将a循环,变为1,2,3,1,2,3。

    > d <- data.frame(a = 1:3, b = 3:8)> for (x in d) {+   cat("column sum:", sum(x),"\n")+   }column sum: 12 
    column sum: 33 
    > d  a b
    1 1 3
    2 2 4
    3 3 5
    4 1 6
    5 2 7
    6 3 8

    所以第一列加和为1+2+3+1+2+3=12

R语言入门与进阶

这门课将会带领您领略R语言的精髓,打开R语言的大门。

20120 学习 · 19 问题

查看课程

相似问题