R语言提取奇数行、偶数行、整倍数行、奇数列、偶数列、整倍数列

1、创建测试数据

> dat <-  as.data.frame(matrix(1:100,nrow =10))
> dat
   V1 V2 V3 V4 V5 V6 V7 V8 V9 V10
1   1 11 21 31 41 51 61 71 81  91
2   2 12 22 32 42 52 62 72 82  92
3   3 13 23 33 43 53 63 73 83  93
4   4 14 24 34 44 54 64 74 84  94
5   5 15 25 35 45 55 65 75 85  95
6   6 16 26 36 46 56 66 76 86  96
7   7 17 27 37 47 57 67 77 87  97
8   8 18 28 38 48 58 68 78 88  98
9   9 19 29 39 49 59 69 79 89  99
10 10 20 30 40 50 60 70 80 90 100

2、提取奇数行

> dat[seq(1,nrow(dat),2),]
  V1 V2 V3 V4 V5 V6 V7 V8 V9 V10
1  1 11 21 31 41 51 61 71 81  91
3  3 13 23 33 43 53 63 73 83  93
5  5 15 25 35 45 55 65 75 85  95
7  7 17 27 37 47 57 67 77 87  97
9  9 19 29 39 49 59 69 79 89  99

3、提取偶数行

> dat[seq(0,nrow(dat),2),]
   V1 V2 V3 V4 V5 V6 V7 V8 V9 V10
2   2 12 22 32 42 52 62 72 82  92
4   4 14 24 34 44 54 64 74 84  94
6   6 16 26 36 46 56 66 76 86  96
8   8 18 28 38 48 58 68 78 88  98
10 10 20 30 40 50 60 70 80 90 100

4、提取三倍数行  

> dat[seq(0,nrow(dat),3),]
  V1 V2 V3 V4 V5 V6 V7 V8 V9 V10
3  3 13 23 33 43 53 63 73 83  93
6  6 16 26 36 46 56 66 76 86  96
9  9 19 29 39 49 59 69 79 89  99

其余以此类推。

5、提取奇数列

> dat[,seq(1,ncol(dat),2)]
   V1 V3 V5 V7 V9
1   1 21 41 61 81
2   2 22 42 62 82
3   3 23 43 63 83
4   4 24 44 64 84
5   5 25 45 65 85
6   6 26 46 66 86
7   7 27 47 67 87
8   8 28 48 68 88
9   9 29 49 69 89
10 10 30 50 70 90

6、提取偶数列

> dat[,seq(0,ncol(dat),2)]
   V2 V4 V6 V8 V10
1  11 31 51 71  91
2  12 32 52 72  92
3  13 33 53 73  93
4  14 34 54 74  94
5  15 35 55 75  95
6  16 36 56 76  96
7  17 37 57 77  97
8  18 38 58 78  98
9  19 39 59 79  99
10 20 40 60 80 100

7、提取三倍数列

> dat[,seq(0,ncol(dat),3)]
   V3 V6 V9
1  21 51 81
2  22 52 82
3  23 53 83
4  24 54 84
5  25 55 85
6  26 56 86
7  27 57 87
8  28 58 88
9  29 59 89
10 30 60 90

其余以此类推。

原文地址:https://www.cnblogs.com/liujiaxin2018/p/13761648.html