- 选入(保留)变量
#以下几种方式获取子集的结果是相同的
> newdata <- leadership[,c(6:9)] #获取列下标为6-9 的数据包含6和9
> View(newdata)
> myvars1 <- c("q1","q2","q3","q4","q5") #获取列为q1...的数据
> newdata1 <- leadership[myvars]
> View(newdata1)
> myvars2 <- paste("q",1:5,sep="") #paste函数
> newdata <- leadership[myvars2]
> newdata2 <- leadership[myvars2]
> View(newdata2)
- 剔除(丢弃)变量
想要排除不需要的变量有几种方式
1、通过负号“-”和位置来筛选
> newdata <- leadership[-8,-9]#通过位置前加负号“-”来和剔除
> View(newdata)
2、通过取反的方式
a、返回一个逻辑型的变量,剔除的变量用TRUE表示
b、使用取反
例
#剔除变量“q3,q4”
x <- names(leadership) %in% c("q3","q4")
newdata1 <- leadership[!x]
#代码分析
# 1、names生成leadership变量名的字符型向量 c("a","b","q3","q4"...,"n")
# 2、%in% c("q3","q4") 判断q3、q4是否在变量名里面,这一行整句返回逻辑型向量,q3,q4位置为TRUE,其他为FALSE ,C("FLASE","FLASE","TRUE","TRUE",...,"FALSE")
# 3、运算符号" !”将逻辑值反转,向量FLASE 全部成 TRUE,TRUE全部成FALSE
# 4、newdata1 <-leadership[c("TRUE","TRUE","FALSE","FLASE",..."TRUE")]取出TRUE的值,这样q3、q4就被排除了。
#剔除变量“q3”
y <-names(leadership) %in% "q3"
newdata2 <- leadership[!y]
[参考]
根据列名或者行名如何提取整列或者整行数据 R (转载总结)_ccpacer_新浪博客