Я пытаюсь показать переменную (конкретное выражение для аллеля) для разных уровней факторов (выборок) и взвешенного среднего (вес = охват).Показывать исходные значения и средневзвешенное значение для каждого уровня фактора в ggplot2
Я сделал некоторые образцы данных:
set.seed(2)
x <- sample(c("A","B","C"), 100, replace=T)
y <- rnorm(100)
w <- ceiling(rnorm(100,200,200))
df <- data.frame(x, y, w)
library(ggplot2)
ggplot(df, aes(x=factor(x), y=y, weight=w)) +
geom_point(aes(size=w)) +
stat_summary(fun.y=mean, colour="red", geom="point", size=5)
(и я попытался отправить сюжет, а также - но у меня нет достаточно очков, пока).
Это прекрасно работает - но это показывает, невзвешенное среднее ...
library(plyr)
means <- ddply(df, "x", function(x) data.frame(wm=weighted.mean(x$y, x$w),
m=mean(x$y)))
means
x wm m
1 A 0.00878432 0.11027454
2 B -0.07283770 -0.13605530
3 C -0.14233389 0.08116117
Так что - я просто пытаюсь показать «СУС» значения, как красные точки, а не - с помощью ggplot2. Я думаю, что он должен правильно использовать «вес = ..», но я сейчас сдаюсь ...
Я действительно надеюсь, что кто-то может помочь.
Спасибо - вы только что спасли мои выходные! – pallevillesen
Привет снова. Не совсем новый для SO - но в основном чтение ответов (так как большинство вопросов в моей области задавали хотя бы один раз раньше;)). Я попытался принять это немедленно, но был вынужден ждать некоторое время системой. Во всяком случае: большое спасибо за быструю помощь. – pallevillesen