Вот подход tidyverse
для создания таблицы с информацией о выполненных вами тестах:
# for reproducibility
set.seed(215)
# example datasets
df1 <- data.frame(ceiling(runif(10,1,10)), ceiling(runif(10,1,10)), ceiling(runif(10,1,10)))
colnames(df1) <- c("V1","V2","V3")
df2 <- data.frame(ceiling(runif(10,1,10)), ceiling(runif(10,1,10)), ceiling(runif(10,1,10)))
colnames(df2) <- c("V1","V2","V3")
library(tidyverse)
list(df1, df2) %>% # put your dataframes in a list
map_df(data.frame, .id = "df") %>% # create a dataframe with an id value for each dataset
tbl_df() %>% # for visualisation purposes only
gather(v, x, -df) %>% # reshape data
nest(-v) %>% # nest data
mutate(w.t = map(data, ~wilcox.test(.x$x ~ .x$df)), # perfom wilcoxon test
pval = map_dbl(w.t, "p.value"), # extract p value
mean_diff = map_dbl(data, ~mean(.x$x[.x$df==1])-mean(.x$x[.x$df==2]))) # calculate mean difference
# # A tibble: 3 x 5
# v data w.t pval mean_diff
# <chr> <list> <list> <dbl> <dbl>
# 1 V1 <tibble [20 x 2]> <S3: htest> 0.730 0.600
# 2 V2 <tibble [20 x 2]> <S3: htest> 0.145 -1.8
# 3 V3 <tibble [20 x 2]> <S3: htest> 0.0295 2.8
Столбец v
представляет ваши переменные (начальные столбцы).
Столбец data
содержит переменные, используемые для соответствующего теста.
Столбец w.t
включает выходные данные теста.
Столбец pval
- это извлеченное значение p из каждого теста.
Столбец mean_diff
- это средняя разница.
Если вы сохраните описанный выше процесс как results
, вы сможете использовать results$w.t
и увидеть результаты теста