【问题标题】:How to subset a dataframe by factor levels of another in R?如何在 R 中按另一个因子级别对数据框进行子集化?
【发布时间】:2013-05-15 16:50:25
【问题描述】:

我有两个 daframe (A,B),它们都包含完全相同的列。

A<-data.frame(factor=c("A","B","C"),value=c(1,2,3))
B<-data.frame(factor=c("A","B","C","D","E"),value=c(7,8,9,4,5))

最后,我想要一个 B 的子集,它只包含 A$factor (A,B,C) 的级别和相应的值。关于如何做到这一点的任何想法? 我查看了merge() 函数,但无法让它工作。

【问题讨论】:

  • 请注意,因子的levels 与因子的uniue 值相同。换句话说,一个因素可能具有值中未表示的水平。例如:X &lt;- factor(c("male", "male"), levels=c("female", "male"))

标签: r dataframe subset


【解决方案1】:

另一种解决方案可能是:

B[B$factor%in%A$factor,]

【讨论】:

    猜你喜欢
    • 2013-10-29
    • 1970-01-01
    • 2014-02-11
    • 2017-12-03
    • 1970-01-01
    • 1970-01-01
    • 2014-11-13
    • 2020-07-06
    • 2021-12-04
    相关资源
    最近更新 更多