基于割集的R二元变量
切割数据帧后,如何添加二进制字段(见下文所需)以使值与切割交替基于割集的R二元变量,r,ggplot2,R,Ggplot2,切割数据帧后,如何添加二进制字段(见下文所需)以使值与切割交替 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 目标是绘制一个直方图,除了只有两种颜色外,其他颜色与类似: (仅用于说明-与上述值不对应)您可以尝试以下方法: set.seed(1) val <- sort(rnorm
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
目标是绘制一个直方图,除了只有两种颜色外,其他颜色与类似:
(仅用于说明-与上述值不对应)您可以尝试以下方法:
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
set.seed(1)
val可能是的副本。那里的方法很容易适应你的问题:c(0,1,0)[as.numeric(cut(x,breaks=c(-Inf,2,3,4))]