【问题标题】:How to create a vector with the values of a data frame classified by factors in R?如何使用 R 中按因子分类的数据框的值创建向量?
【发布时间】:2017-11-25 19:32:11
【问题描述】:

我有一个数据框,其值按级别(因子)分类,因此我想创建一个具有特定级别值的向量,例如

A <- c("Case1", "Case3", "Case2", "Case3", "Case2",
       "Case1", "Case3", "Case2", "Case2", "Case3",
       "Case1", "Case1", "Case3", "Case1", "Case2")
Factors <- factor(A)
Values <- 1:15

DF <- data.frame(Factors, Values)

Values_of_Case1 <- DF$Values... ????

如何创建一个向量以获得类似的东西:

print(Values_of_Case1)
[1]  1  6 11 12 14

【问题讨论】:

    标签: r subset r-factor


    【解决方案1】:
    DF$Values[DF$Factors == "Case1"]
    [1]  1  6 11 12 14
    

    或

    subset(DF, Factors=='Case1')$Values
    [1]  1  6 11 12 14
    

    应该可以。

    如果您只想要匹配项的行索引,您可以这样做:

    which(DF$Factors == "Case1")
    [1]  1  6 11 12 14
    

    在这种情况下是相同的,但在您的用例中可能不一样。

    【讨论】:

    • 此外,我想创建一个带有行号的向量。我该怎么做?
    • @DanielValenciaC。我用一种获取行号的方法更新了帖子。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-12
    • 2017-11-28
    • 2021-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多