# [R] Problem with contour(): typo

Helmut Schütz he|mut@@chuetz @end|ng |rom beb@c@@t
Tue Sep 29 11:37:09 CEST 2020

```Dear Duncan,

Duncan Murdoch wrote on 2020-09-28 21:47:
> You're doing a lot of manipulation of the z matrix; I haven't followed
> all of it, but that's where I'd look for problems.  Generally if you
> keep your calculation of the z matrix very simple you are better off.
> For example, once you have xs and ys in the form you want, calculate z as
>
> z <- outer(x,y, function(x,y) ...)
>
> and then plot it using contour(x, y, z, ...)
>
> The only tricky issue here is that the function needs to be
> vectorized, so if your power.TOST function doesn't accept vectors for
> CV and theta0,
> you'll need to put it in a wrapper that does (perhaps using the
> Vectorize function).

Here I'm lost. power.TOST(theta0, CV, ...) vectorizes properly for
theta0 _or_ CV but no _both_. Hence
library(PowerTOST)
power.TOST(theta0 = c(0.9, 0.95, 1), CV = 0.25, n = 28)
and
power.TOST(theta0 = 0.95, CV = c(0.2, 0.25, 0.3), n = 28)
work, whereas
power.TOST(theta0 = c(0.9, 0.95, 1), 0.95, CV = c(0.2, 0.25, 0.3), n = 28)
not. Of note, we will throw an error in the next release if both
arguments are vectors.
I tried
f <- function(x, y) {
power.TOST(theta0 = x, CV = y, n = 28)
}
x <- unique(sort(c(0.95, seq(0.95*0.95, 1, length.out = 28))))
y <- unique(sort(c(0.25, seq(0.25*0.8, 0.25*1.2, length.out = 28))))
Vectorize(f, c("x, y"), SIMPLIFY = "array")
which is obviously not correct.

Helmut

--
Ing. Helmut Schütz
BEBAC – Consultancy Services for
Bioequivalence and Bioavailability Studies
Neubaugasse 36/11
1070 Vienna, Austria
E helmut.schuetz using bebac.at
W https://bebac.at/
F https://forum.bebac.at/

```