我正在尝试根据第1,第3和第4个分位数(即0-25%,25%-75%,75%-100%)从R中的列中合并数字数据。我使用了以下代码,但零不包括在分箱中。它们显示为NA。
Get-WmiObject -class Win32_NTLogEvent -filter "(logfile='Application') AND (type='error')"
在quantile.default中出错(rawdata1 $ Usage_Percentage,probs = c(-Inf, 0.25,:'probs'在[0,1]
之外
但是,如果使用以下代码并将其分为4个分位数,那么这些分箱就可以了。
rawdata1$usage4 <- cut(rawdata1$Usage_Percentage,
breaks = quantile(rawdata1$Usage_Percentage,
probs = c(-Inf,0.25,0.75,Inf),include.lowest=T),labels=F)
答案 0 :(得分:0)
要在分箱中加入零,您还可以使用cut2
中的Hmisc
功能。
这是一个例子。
data <- data.frame(vect = c(1.64, 1.5, 1.5, 1.41, 1.64, 1.64, 0, 1.45, 1.64, 1.5, 1.45, 0, 1.45, 1.64,
1.5, 1.5, 1.5, 0, 1.5, 1.41, 0.18, 0.09, 0.1, 0.09, 0.05, 0.09, 1.64, 1.5,
1.5, 0.1, 0.05, 0.09, 0, 5.82, 5.86, 5.86, 0, 5.82, 5.82, 5.82, 5.82, 5.82,
5.86, 5.86, 5.82, 0, 5.91, 9.41, 9.5, 5.91, 0, 9.45, 5.91, 9.45, 5.91, 0,
0, 9.55, 5.91, 9.55, 9.5, 9.55, 0, 5.82, 1.64))
data$bin <- factor(Hmisc::cut2(data$vect, g = 4), labels = c(1:4))
#g represents the number of quantile groups