Несколько ящиков R

Вопрос:

У меня есть два списка:

head(x)

[[1]] 30.0 28.9 28.9
[[2]] 29.4 29.4 29.4
[[3]] 27.2 28.3
[[4]] 27.8 30.0 27.2 28.3 28.9 28.3 27.8

head(y)

[[1]] 28.9 28.9
[[2]] 29.4
[[3]] 28.9 30.0 27.2 28.3
[[4]] 27.2 28.3 28.9 28.3 27.8

x и y имеют одинаковую длину, но для каждой записи списка ([[1]], [[2]]] и т.д.) количество элементов может меняться.

Я могу делать полевые диаграммы x и y отдельно

boxplot(x)
boxplot(y)

но как я могу сделать окно с их разницей (для каждой записи списка у меня есть среднее значение, sd и т.д. и т.д. для различий в средствах)?

Большое спасибо,

Лучший ответ:

Поэтому, если ваши данные выглядят так

x<-list(
 c(30.0, 28.9, 28.9 ),
 c(29.4, 29.4, 29.4 ),
 c(27.2, 28.3 ),
 c(27.8, 30.0, 27.2, 28.3, 28.9, 28.3, 27.8 )
)

y<-list(
 c(28.9, 28.9 ),
 c(29.4 ),
 c(28.9, 30.0, 27.2, 28.3  ),
 c(27.2, 28.3, 28.9, 28.3, 27.8 )
)

Затем вы можете сделать квадратный график разницы между наборами с

boxplot(mapply(function(x,y) {mean(x)-mean(y)}, x, y))

Конечно, у этого будет только один boxplot, потому что каждая из 4 групп будет иметь только одно различие в среднем. Разница в средствах в наблюдаемых образцах — одно значение. Он сам не имеет среднего или стандартного отклонения. Это связано с тем, что вы не можете рассчитать парную разницу в списках, потому что вектор чисел в каждом наборе отличается.

Оцените статью
TechArks.Ru
Добавить комментарий