首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将两列因素组合为一列,而不将因素级别更改为数字

如何将两列因素组合为一列,而不将因素级别更改为数字
EN

Stack Overflow用户
提问于 2013-10-05 19:23:03
回答 5查看 46.8K关注 0票数 12

我试图找到一种方法,将两列因素组合成一列,而不将因子级别更改为数字。例如,考虑以下两个data.frame数据集

代码语言:javascript
复制
  dataset 1                       dataset 2
  Number  Student                 Number Student
       1    Chris                      1    Matt
       2    Sarah                      2   Keith

我试图把dataset1中的“学生”一栏和dataset2的“学生”一栏写成一个包含"Chris“、"Sarah”、"Matt“和"Keith”的大型学生专栏。

我试过:

代码语言:javascript
复制
  student.list<-c(dataset1[,2],dataset2[,2])
  student.list

但是,这是不起作用的,因为名称用c()函数变成数字。我希望我的名单保留学生的名字(也就是说,不把它们转换成数字)。我也尝试了cbind(),但是给出了与c()相同的问题.

谢谢

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-10-05 19:26:01

factors是碰巧有标签的数字。在组合因素时,通常是将它们的数值组合在一起。这常常会把人绊倒。

如果你想要他们的标签,你必须使用as.character强迫他们使用字符串。

代码语言:javascript
复制
 student.list <- c( as.character(dataset1[,2]) ,
                    as.character(dataset2[,2])  )

如果你想让它回到因子,把它都用as.factor包装(可以是一行,也可以分割成两行,以便更容易阅读)

代码语言:javascript
复制
 student.list <- c(as.character(dataset1[,2]),as.character(dataset2[,2]))
 student.list <- as.factor(student.list)
票数 12
EN

Stack Overflow用户

发布于 2018-06-21 11:25:20

基R包中有interaction()函数。在strata()包中也有survival函数。

票数 3
EN

Stack Overflow用户

发布于 2013-10-05 20:52:50

data.table包以一些非常有用的方式扩展了数据帧的功能,当您使用rbindlist函数时,它将自动组合各种因素。另外,如果您的两个数据集很大,它通常会更快地组合它们。

代码语言:javascript
复制
library(data.table)

# Example data:
# (If you already have data frames, you can convert them using `as.data.table(dataframename)`)
dataset1<-data.table(Number=1:2,Student=as.factor(c("Chris","Sarah")))
dataset2<-data.table(Number=1:2,Student=as.factor(c("Matt","Keith")))


# Combine the two data sets:
# (It's not necessary to convert factors to characters)
rbindlist(list(dataset1,dataset2))
#   Number Student
#1:      1   Chris
#2:      2   Sarah
#3:      1    Matt
#4:      2   Keith
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19201773

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档