Movatterモバイル変換


[0]ホーム

URL:


tidyboot

tidyboot let’s you compute arbitrary non-parametricbootstrap statistics on data in tidy data frames.

Installation

You can install tidyboot from CRAN with:

install.packages("tidyboot")

You can install tidyboot from github with:

# install.packages("devtools")devtools::install_github("langcog/tidyboot")

Examples

For the simplest use case of bootstrapping the mean and getting themean and confidence interval of that estimate, use the conveniencefunctiontidyboot_mean(), specifying which column has therelevant values to compute the mean over:

library(dplyr)library(tidyboot)gauss1<-data_frame(value =rnorm(500,mean =0,sd =1),condition =1)gauss2<-data_frame(value =rnorm(500,mean =2,sd =3),condition =2)df<-bind_rows(gauss1, gauss2)df%>%group_by(condition)%>%tidyboot_mean(column = value)#> # A tibble: 2 x 6#>   condition     n empirical_stat  ci_lower        mean   ci_upper#>       <dbl> <int>          <dbl>     <dbl>       <dbl>      <dbl>#> 1         1   500    -0.02292831 -0.114664 -0.02196269 0.06232765#> 2         2   500     2.02781100  1.755141  2.02955494 2.30626508

For bootstrapping any statistic and any properties of its samplingdistribution, usetidyboot().

You can provide the statistic to be estimated either as a functionand a column to compute it over, or as function that takes the wholedataframe and computes the relevant value.

Similarly, you can provide the properties of the samplingdistribution to be computed either as a named list of functions and acolumn to compute them over, or a function that takes the wholedataframe and returns the relevant values.

df%>%group_by(condition)%>%tidyboot(column = value,summary_function = median,statistics_functions =list("mean"= mean,"sd"= sd))#> # A tibble: 2 x 5#>   condition     n empirical_median         mean         sd#>       <dbl> <int>            <dbl>        <dbl>      <dbl>#> 1         1   500     -0.006468345 -0.005842842 0.05544625#> 2         2   500      1.995112455  2.011381756 0.20658963
df%>%group_by(condition)%>%tidyboot(summary_function =function(x) x%>%summarise(median =median(value)),statistics_functions =function(x) x%>%summarise_at(vars(median),funs(mean, sd)))#> # A tibble: 2 x 5#>   condition     n empirical_median         mean         sd#>       <dbl> <int>            <dbl>        <dbl>      <dbl>#> 1         1   500     -0.006468345 -0.006287976 0.05505858#> 2         2   500      1.995112455  2.006877243 0.20645516

[8]ページ先頭

©2009-2025 Movatter.jp