如何仅循环打印每列中的每个值

时间:2018-07-18 21:00:17

标签: r

下面是我的代码:

my.dataset1<- data.frame(site=c(11,12,13,14),
                     season=c(21,22,23,24),
                     PH=c(1,2,3,4))


for i in names(my.dataset1){
  for (j in nrow(my.dataset1)) {
           print(my.dataset1$i[j])

       }
}

我想要的是它可以打印结果:

11

12

13

14

21

22

23

24

1

2

3

4

我真正得到的是

null

它不起作用。我想通过for循环获得结果!

1 个答案:

答案 0 :(得分:0)

必须修改循环语法。循环第一行中的names也应替换为ncol()。这将为您工作。

my.dataset1<- data.frame(site=c(11,12,13,14),
                         season=c(21,22,23,24),
                         PH=c(1,2,3,4))


for (i in 1:ncol(my.dataset1)){
  for (j in 1:nrow(my.dataset1)) {
    print(my.dataset1[j,i])

  }
}