【发布时间】:2011-12-23 15:11:16
【问题描述】:
我有几个组,比如说 A、B、C,我想 cut 基于这些组的另一个变量,即每个组对同一个变量都有特定的中断。
如果我必须计算组的平均值,我会像这样使用tapply:
tapply(mydata$var,mydata$group,mean)
不幸的是,我不知道如何通过更改不同组的 break=c(...) 参数来解决 cut 的问题。
tapply(mydata$var,mydata$group,cut)
有什么建议吗?我想用tapply 来做这件事,但除了定制功能之外的任何其他解决方案也都适用。
编辑:一些小例子:
test <- data.frame(var=rnorm(100,0,1),
group=c(rep("A",30),
rep("B",20),
rep("C",50)))
# for group A:
cut(test$var,breaks=c(-4,0,4))
# for group B
cut(test$var,breaks=c(-4,1,4))
等等……
【问题讨论】:
-
你能构造一个小例子吗?目前还不清楚您希望
group如何确定/指导cut()断点的选择。