在很多时候,需要向正在处理的数据框中添加一个或多个新的变量,构成新的数据框,以便于后续数据的处理,
这里将向大家展现三种简单的方法:
第一种:
> mydata<-data.frame(x1=x1<-c(2,2,6,3),x2=x2<-c(3,4,2,8))
> mydata
x1 x2
1 2 3
2 2 4
3 6 2
4 3 8
> mydata$sumx<-mydata$x1+mydata$x2
> mydata$meanx<-(mydata$x1+mydata$x2)/2
> mydata
x1 x2 sumx meanx
1 2 3 5 2.5
2 2 4 6 3.0
3 6 2 8 4.0
4 3 8 11 5.5
第二种:
> attach(mydata)
The following objects are masked _by_ .GlobalEnv:
x1, x2
> mydata$sumx<-mydata$x1+mydata$x2
> mydata$meanx<-(mydata$x1+mydata$x2)/2
> detach(mydata)
> mydata
x1 x2 sumx meanx
1 2 3 5 2.5
2 2 4 6 3.0
3 6 2 8 4.0
4 3 8 11 5.5
第三种:第三种利用transform函数,这种方法比较实用,简化了整个添加的过程
> mydata
x1 x2 sumx meanx
1 2 3 5 2.5
2 2 4 6 3.0
3 6 2 8 4.0
4 3 8 11 5.5
> mydata<-transform(mydata,a1=sumx+meanx,a2=sumx-meanx),向之前的mydata数据框中增加a1,a2列。
> mydata
x1 x2 sumx meanx a1 a2
1 2 3 5 2.5 7.5 2.5
2 2 4 6 3.0 9.0 3.0
3 6 2 8 4.0 12.0 4.0
4 3 8 11 5.5 16.5 5.5
>