【问题标题】:How can I use the indexed numerical value of a factor level in r?如何在 r 中使用因子水平的索引数值?
【发布时间】:2017-04-19 04:32:09
【问题描述】:

我有一个包含单列数据的因子变量。它包含 33 个级别,据我了解,每个级别都有一个 1-33 的整数值。我想知道如何在对行进行子集化时引用该值而不是级别标签?

这是我为它编写代码的尝试:

贝克斯利

我正在尝试创建一个新对象“Bexley”,该对象仅包含从数据框“LE2016”中分配了整数值 3 的级别。

谢谢

【问题讨论】:

标签: r statistics subset


【解决方案1】:

您可以使用cas.numeric 将因子强制为整数,然后进行子集化。这是一个简单的例子:

library(dplyr)
DF <- data.frame(f=factor(c("a", "b", "c", "a", "b", "c"), levels=c("a", "b", "c")))
DF
  f
1 a
2 b
3 c
4 a
5 b
6 c
# filter out the 3th level
DF %>% filter(c(f) == 3)
  f
1 c
2 c

# c will coerce factor to integer
c(DF$f)
[1] 1 2 3 1 2 3

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-04-14
    • 1970-01-01
    • 2014-09-11
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多