有时,我们希望使用R数据框的某些列进行分析,因此,最好获取我们需要的所有列的列表。这样,如果需要,我们不必担心列操作,因为我们将仅拥有必要的列。要获取除一列或多列之外的所有列的列表,可以使用单个方括号来完成。
请看以下数据帧-
set.seed(100) x1 <-LETTERS[1:20] x2 <-sample(1:100,20) x3 <-sample(1:10,20,replace=TRUE) x4 <-rnorm(20) df <-data.frame(x1,x2,x3,x4) df
输出结果
x1 x2 x3 x4 1 A 74 2 -0.69001432 2 B 89 3 -0.22179423 3 C 78 4 0.18290768 4 D 23 4 0.41732329 5 E 86 4 1.06540233 6 F 70 5 0.97020202 7 G 4 7 -0.10162924 8 H 55 9 1.40320349 9 I 95 4 -1.77677563 10 J 7 2 0.62286739 11 K 91 6 -0.52228335 12 L 93 7 1.32223096 13 M 43 1 -0.36344033 14 N 82 6 1.31906574 15 O 61 9 0.04377907 16 P 12 9 -1.87865588 17 Q 51 9 -0.44706218 18 R 72 6 -1.73859795 19 S 18 8 0.17886485 20 T 25 7 1.89746570
df[,1] [1] A B C D E F G H I J K L M N O P Q R S T Levels: A B C D E F G H I J K L M N O P Q R S T df[,1:3]
输出结果
x1 x2 x3 1 A 74 2 2 B 89 3 3 C 78 4 4 D 23 4 5 E 86 4 6 F 70 5 7 G 4 7 8 H 55 9 9 I 95 4 10 J 7 2 11 K 91 6 12 L 93 7 13 M 43 1 14 N 82 6 15 O 61 9 16 P 12 9 17 Q 51 9 18 R 72 6 19 S 18 8 20 T 25 7
df[,c(2,4)]
输出结果
df[,c(2,4)]
x2 x4 1 74 -0.69001432 2 89 -0.22179423 3 78 0.18290768 4 23 0.41732329 5 86 1.06540233 6 70 0.97020202 7 4 -0.10162924 8 55 1.40320349 9 95 -1.77677563 10 7 0.62286739 11 91 -0.52228335 12 93 1.32223096 13 43 -0.36344033 14 82 1.31906574 15 61 0.04377907 16 12 -1.87865588 17 51 -0.44706218 18 72 -1.73859795 19 18 0.17886485 20 25 1.89746570
df[,-c(2,4)]
输出结果
x1 x3 1 A 2 2 B 3 3 C 4 4 D 4 5 E 4 6 F 5 7 G 7 8 H 9 9 I 4 10 J 2 11 K 6 12 L 7 13 M 1 14 N 6 15 O 9 16 P 9 17 Q 9 18 R 6 19 S 8 20 T 7
df[,-1]
输出结果
x2 x3 x4 1 74 2 -0.69001432 2 89 3 -0.22179423 3 78 4 0.18290768 4 23 4 0.41732329 5 86 4 1.06540233 6 70 5 0.97020202 7 4 7 -0.10162924 8 55 9 1.40320349 9 95 4 -1.77677563 10 7 2 0.62286739 11 91 6 -0.52228335 12 93 7 1.32223096 13 43 1 -0.36344033 14 82 6 1.31906574 15 61 9 0.04377907 16 12 9 -1.87865588 17 51 9 -0.44706218 18 72 6 -1.73859795 19 18 8 0.17886485 20 25 7 1.89746570
df[,-4]
输出结果
x1 x2 x3 1 A 74 2 2 B 89 3 3 C 78 4 4 D 23 4 5 E 86 4 6 F 70 5 7 G 4 7 8 H 55 9 9 I 95 4 10 J 7 2 11 K 91 6 12 L 93 7 13 M 43 1 14 N 82 6 15 O 61 9 16 P 12 9 17 Q 51 9 18 R 72 6 19 S 18 8 20 T 25 7