stocdarf at mail.tu-berlin.de
2011-May-24 12:44 UTC
[R] power.t.test visualization problem
Dear R-User,
I'm trying to visualize the results of the power calculation with the
function power.t.test(). Therefore I want to plot the related
t-distributions and shade the surfaces indicatingt the type I error,
the type II error and the power. For sample sizes greater 30 I got
results which are very satisfying. For small sample sizes I got stuck
and did'nt find a mistake.
To show you the problem I wrote some lines in R:
par(mfrow = c(4,2))
for(n in c(2,6,10,14,18,22,26,30))
{
temp = power.t.test(n = n, sd = 1, power = 0.5, sig.level = 0.05,
# power calculation -->
power is specified with 50%
type = "one.sample", alternative =
"one.sided")
s = temp$sd
# get standard deviation out of test distribution
n = temp$n
# get sample size out of test distribution
delta = temp$delta
#
get delta (distance between centrality points) out of test ditribution
plot(1:10, xlim = c(-5,10), ylim = c(0, 0.5), type = "n")
# create plot
window
x = seq(-5, 10, length = 400)
#
x-values
y1 = dt(x, df = n-1)
# y-values calculated with related t-distribution (df=n-1)
lines(x, y1, col = 2)
# plot related t-distribution
lines(x + delta/(s/sqrt(n)), y1)
#
plot related t-distribution shifted with normalized delta
abline(v = qt(0.95, df = n-1))
#
draws a vertical line at the
abline(v=delta/(s/sqrt(n)),lty=2)
legend("topright",legend=c(paste("n=",n),
paste("bias=",round(qt(0.95, df =
n-1)-delta/(s/sqrt(n)),2)))) #
creates legend
}
This code creates some plots with different sample size n. I would
expect the solid vertical line and the dotted vertical line one above
the other. But indeed the space between both of them is increasing
with a decreasing sample size.
Whe re is my mistake? Is it a error in reasoning or is it "just" not
possible to visualize this problem for small sample sizes?
I look foward to any suggestions and hints. So much thanks in advance.
?tienne
On May 24, 2011, at 8:44 AM, stocdarf at mail.tu-berlin.de wrote:> Dear R-User, > > I'm trying to visualize the results of the power calculation with > the function power.t.test(). Therefore I want to plot the related t- > distributions and shade the surfaces indicatingt the type I error, > the type II error and the power. For sample sizes greater 30 I got > results which are very satisfying. For small sample sizes I got > stuck and did'nt find a mistake. > To show you the problem I wrote some lines in R: > > par(mfrow = c(4,2)) > for(n in c(2,6,10,14,18,22,26,30)) > { > temp = power.t.test(n = n, sd = 1, power = 0.5, sig.level = > 0.05, # power > calculation --> power is specified with 50% > type = "one.sample", alternative = "one.sided") > s = temp > $ > sd > # get > standard deviation out of test distribution > n = temp > $ > n > # get > sample size out of test distribution > delta = temp > $ > delta > # get > delta (distance between centrality points) out of test ditribution > > plot(1:10, xlim = c(-5,10), ylim = c(0, 0.5), type = > "n") > # create plot window > > x = seq(-5, 10, length = > 400 > ) # x > -values > y1 = dt(x, df = > n > -1 > ) # y > -values calculated with related t-distribution (df=n-1) > > lines(x, y1, col = > 2 > ) # plot > related t-distribution > lines(x + delta/(s/sqrt(n)), > y1 > ) # plot > related t-distribution shifted with normalized delta > > abline(v = qt(0.95, df = > n > -1 > )) # draws > a vertical line at the > abline(v=delta/(s/sqrt(n)),lty=2) > > legend("topright",legend=c(paste("n=",n), > paste("bias=",round(qt(0.95, df = n-1)-delta/(s/sqrt(n)), > 2)))) # creates legend > } > > This code creates some plots with different sample size n. I would > expect the solid vertical line and the dotted vertical line one > above the other. But indeed the space between both of them is > increasing with a decreasing sample size. > Whe re is my mistake? Is it a error in reasoning or is it "just" > not possible to visualize this problem for small sample sizes?You do realize that you should be using the non-central t distribution when considering the alternate hypothesis, right? By the time you get down to sample sizes of 6 there should be a visible skew to the distribution of "observed" differences.> > I look foward to any suggestions and hints. So much thanks in advance. > > ?tienne-- David Winsemius, MD West Hartford, CT