gpt4 book ai didi

r - 从绘图的 bin 生成汇总表

转载 作者:行者123 更新时间:2023-12-02 01:25:40 25 4
gpt4 key购买 nike

我有以下形式的数据集:

d = data.frame(seq(0.01,1,by=0.01), c(seq(0.27,0.1,-0.01),seq(0.1,0.5,0.01),seq(0.5,0.1,-0.01)))
names(d) = c("X","Y")
ggplot(d, aes(x=X, y=Y)) + geom_line()

我试图生成一个汇总表,将 Y 变量分为 10% 的相等组,并为每个 bin 生成 X 的汇总统计信息。这就是我希望结果的样子:

Y Group    X Group
0-10% {Range1: 10-30%, mean1, median1, sd1} {Range2: 85-100%, mean2, median2, sd2}
10-20% ...
20-30% ...
30-40% ...
40-50% ...

X 的范围并不总是两个,20-30% 的 Y 有三个 X 范围,40-50% 有一。

我有许多大型数据集,必须在这些数据集上实现。数据用于重现问题。我的实际数据可能有很多拐点,因为此代码必须在 XY 的许多组合上运行。

最佳答案

输出格式与您的不同。

但这里有一个接近的解决方案。您可以根据自己的喜好轻松重新格式化。看来您将 Y 分为 10 组,但不确定 X。我也在 X 上使用 10 组。

d = data.frame(seq(0.01,1,by=0.01), c(seq(0.27,0.1,-0.01),seq(0.1,0.5,0.01),seq(0.5,0.1,-0.01)))

names(d) = c("X","Y")

library(dplyr)

d$x.decile<-ntile(d$X,10)
d$y.decile<-ntile(d$Y,10)


summary<-data.frame(d%>%group_by(y.decile, x.decile)%>%summarise(mean=mean(X),median=median(X), min=min(X), max=max(X), sd=sd(X)))

> summary
y.decile x.decile mean median min max sd
1 1 2 0.175 0.175 0.15 0.20 0.018708287
2 1 3 0.210 0.210 0.21 0.21 NaN
3 1 10 0.990 0.990 0.98 1.00 0.010000000
4 2 2 0.135 0.135 0.13 0.14 0.007071068
5 2 3 0.235 0.235 0.22 0.25 0.012909944
6 2 10 0.955 0.955 0.94 0.97 0.012909944
7 3 1 0.095 0.095 0.09 0.10 0.007071068

关于r - 从绘图的 bin 生成汇总表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37213339/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com