【问题标题】:R binary variable based on cut基于切割的R二进制变量
【发布时间】:2017-11-19 11:32:24
【问题描述】:

切割数据帧后,如何添加二进制字段(见下文所需)以使值与切割交替?

x   cut desired
1.1 (1, 2]  0
1.5 (1, 2]  0
1.6 (1, 2]  0
2.5 (2, 3]  1
3   (2, 3]  1
3.5 (3, 4]  0
3.5 (3, 4]  0
3.7 (3, 4]  0

我们的目标是绘制一个颜色类似于this 的直方图,除了只有两种颜色:

(仅用于说明 - 与上述值不对应)

【问题讨论】:

标签: r ggplot2


【解决方案1】:

你可以试试这个:

set.seed(1)
val <- sort(rnorm(100))
df <- data.frame(x = val, cut = cut(val,30))
df$desired <- as.numeric(df$cut) %% 2

head(df, 10)
#            x            cut cut_num desired
# 1  -2.214700  (-2.22,-2.06]       1       1
# 2  -1.989352  (-2.06,-1.91]       2       0
# 3  -1.804959  (-1.91,-1.75]       3       1
# 4  -1.523567   (-1.6,-1.45]       5       1
# 5  -1.470752   (-1.6,-1.45]       5       1
# 6  -1.377060  (-1.45,-1.29]       6       0
# 7  -1.276592  (-1.29,-1.14]       7       1
# 8  -1.253633  (-1.29,-1.14]       7       1
# 9  -1.224613  (-1.29,-1.14]       7       1
# 10 -1.129363 (-1.14,-0.984]       8       0

编辑: 请注意,剪切的中断可以是空的(参见示例中的cut_num == 4),在这种情况下,看似连续的中断会得到相同的desired 标签。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-08
    • 1970-01-01
    • 1970-01-01
    • 2020-02-18
    • 1970-01-01
    • 2015-02-07
    相关资源
    最近更新 更多