如何将多个变量作为r中的一个因子放入列中
我在制作数据结构时遇到问题如何将多个变量作为r中的一个因子放入列中,r,database,structure,R,Database,Structure,我在制作数据结构时遇到问题 lv1<-c(5,2,8) lv2<-c(9,3,6) lv3<-c(5,0,2) df<-data.frame(lv1,lv2,lv3) lv1您需要tidyverse: library(tidyverse) new.df%>% gather(lv,number.of.people) lv number.of.people 1 lv1 5 2 lv1
lv1<-c(5,2,8)
lv2<-c(9,3,6)
lv3<-c(5,0,2)
df<-data.frame(lv1,lv2,lv3)
lv1您需要tidyverse
:
library(tidyverse)
new.df%>%
gather(lv,number.of.people)
lv number.of.people
1 lv1 5
2 lv1 2
3 lv1 8
4 lv2 9
5 lv2 3
6 lv2 6
7 lv3 5
8 lv3 0
9 lv3 2
这不使用任何包
long <- stack(df)
如果要更改名称并反转列顺序,请执行以下操作:
long <- stack(df)[2:1]
names(long) <- c("lv", "no.of.people")
long@ZhenpengHu如果这是正确答案,请标记它
> long
values ind
1 5 lv1
2 2 lv1
3 8 lv1
4 9 lv2
5 3 lv2
6 6 lv2
7 5 lv3
8 0 lv3
9 2 lv3
long <- stack(df)[2:1]
names(long) <- c("lv", "no.of.people")