找到100的范围和他们的计数之间的数值
在Excel中,我可以让该组的列和计数,但IAM无法做到在R.找到100的范围和他们的计数之间的数值
对于R中做我使用剪切功能有一些休息。
cut(elapsed, breaks=seq(min(elapsed),max(elapsed)+100,50), include.lowest=T)
这里我附上了数据的png和所需的输出。 但上面的代码没有给我需要的输出。
这是我的数据
和我需要的输出:
400 9
500 4
600 2
700 5
800 3
900 3
这应该工作:
data.frame(table(elapsed %/% 100))
例如:
elapsed <- c(400, 423, 423, 534, 534, 639, 602, 812, 703)
data.frame(table(elapsed %/% 100))
Var1 Freq
1 4 3
2 5 2
3 6 2
4 7 1
5 8 1
对于所需的结果,数百名使用此:
res <- data.frame(table(elapsed %/% 100))
res$Var1 <- as.numeric(res$Var1) * 100
@ user7462639这是否行之有效? – PoGibas
@ PoGibas嗨,它不满足我的完整要求,但这给了一些idea.where我犯了错误。我尝试以不同的方式使用ggplot2。我不知道它是否正确的过程或不.'ggplot_build(ggplot()+ aes (elapsed)+ geom_histogram(binwidth = 100))$ data [1] [[1]] [,c(2:3)]。代码完全符合我的要求。 – user7462639
而且我的数据每次都会动态变化,因为我应该调整间隔**(100到10,000)。**并计算间隔中有多少个值。你能给出任何想法,我如何改变基于动态数据的时间间隔。 Thankyou – user7462639
你可以试试:
require(magrittr)
elapsed <- runif(100, 400, 1000) %>% round
cut(elapsed, breaks = seq(400,1000,100),
labels = as.character(seq(400,900,100)),
include.lowest=TRUE) %>% table
为您提供:
400 500 600 700 800 900
15 22 16 9 20 18
此答案中没有使用'plyr'函数。你可以为管道加载'magrittr',(或者'dplyr',我想不太直接)。对于newby问题,我会建议不要使用管道或解释它是什么。 (并解释说这不是绝对必要的。) – Gregor
你'cut',你需要在聚合后某种方式。 'table'在这里最有意义。 – A5C1D2H2I1M1N2O1R2T1
为了让您的示例具有可重现性,请在问题摘要*享'dput(elapsed)'的输出。我同意@ A5C1D2H2I1M1N2O1R2T1,你需要在使用'cut'后使用'table'功能。 – TUSHAr