R语言 数据集取子集

保留变量:

>newdata<-leadership[,c(6:10)]

                      或者

> myvars<-c("item1","item2","item3","item4","item5")
> newdata<-leadership[myvars]

丢弃变量:

> myvars<-names(leadership)%in%c("item3","item4")
> newdata<-leadership[!myvars]
> newdata
  managerID testDate country gender age item1 item2 item5 agecat
1         1 10/24/08      US      M  32     5     4     5  Young
2         2 10/28/08      US      F  45     3     5     5  Young
3         3  10/1/08      UK      F  26     3     5     2  Young
4         4 10/12/08      UK      M  39     3     3    NA  Young
5         5   5/1/09      UK      F  NA     2     2     1   <NA>

                      或者

> newdata<-leadership[c(-8,-9)]

选入观测:

> newdata<-leadership[1:3,]
//选择第一行到第三行观测

> newdata<-leadership[which(leadership$gender=="M"&leadership$age>30),]
//选择了所有30岁以上的男性

使用subset()函数:

> newdata<-subset(leadership,age>=35|age<24,select=c(item1,item2,item3,item4))
//选择了所有age值大于等于35或age值小于24的行,保留了变量item1到item4。

> newdata<-subset(leadership,gender=="M"&age>25,select=gender:item4)
//选择了所有25岁以上的男性,并保留了变量gender到q4(gender、item4和其间所有列)

随机抽样:

> mysample<-leadership[sample(1:nrow(leadership),3,replace=FALSE),]
//从leadership数据集中随机抽取一个大小为3的样本
//sample(1:nrow(leadership)参数是一个由要从中抽样的元素组成的向量
//3是要抽取的元素数量
//replace=FALSE表示无放回抽样

相关:抽取和校正调查样本的sampling包 以及分析复杂调查数据survey包。

猜你喜欢

转载自blog.csdn.net/l1l1l1001/article/details/83927641
今日推荐