首页 > 解决方案 > r, cbind 两列,按指定顺序取值

问题描述

我有 2 个列表,一个带有 Gender c('m', 'f', 'f', 'm', 'f'),另一个带有 names c('Peter', 'Peter', 'Anna', 'Anna', 'Peter')。我想join/merge两列到一个数据框,其中性别值适合名称(Peter 和 m,Anna 和 f)。

我如何在 R 中做到这一点?

感谢您的帮助!

标签: rcbind

解决方案


假设您有以下两个列表:

gender = list(c('m', 'f', 'f', 'm', 'f'))
names = list(c('Peter', 'Peter', 'Anna', 'Anna', 'Peter'))
 

一种选择是使用unlist并将它们组合成一个data.frame

data.frame(names = unlist(names),
           gender = unlist(gender)
           )

#   names gender
# 1 Peter     m
# 2 Peter     f
# 3 Anna      f
# 4 Anna      m
# 5 Peter     f
        

推荐阅读