Skip to main content
Removed last sentence as it was irrelevant.
Source Link

An instrument used for measurements has a known measurement imprecision of $CV = 10 \%$. Thus, if the variable to be measured has a true value $x_{true}$, the range of possible measured values will be given by:

$x_{measured} \sim \mathcal{N}(x_{true},\,(0.1\cdot x_{true})^2)$

Say we have two measurements, $x_{1_{measured}} = 100$ and $x_{2_{measured}} = 50$. We can easily calculate the 95% CI for $x_{1_{true}}$ and $x_{2_{true}}$ in R:

cv <- .1
x1_measured <- 100; x2_measured <- 50    
x1_true_ci <- x1_measured / qnorm(c(.975, .025), 1, cv)
x2_true_ci <- x2_measured / qnorm(c(.975, .025), 1, cv)

However, I would like to determine a 95% CI for the ratio $\frac{x_{2_{true}}}{x_{1_{true}}}$. My current approach is to simulate ratios and then use quantile() to find the 2.5% and 97.5% quantiles as follows:

ratio_sim <- (x2_measured / rnorm(1e6, 1, cv)) / (x1_measured / rnorm(1e6, 1, cv))
ratio_ci <- quantile(ratio_sim, c(.025, .975))

log(ratio_sim)appears to be close to normally distributed, although I would assume that it is actually a kind of ratio distribution? Anyway, calculating the 95% CI from log(ratio_sim) yields values very similar to the quantiles calculated previously:

ratio_ci2 <- qlnorm(c(.025, .975), mean(log(ratio_sim)), sd(log(ratio_sim)))

My question: is there a more direct, less computationally intensive way to estimate the 95 % CI for the ratio, without using simulation? I noticed that x2_measured / x1_measured * sqrt(2) * cv gives values somewhat close to sd(ratio_sim), but I don't think it's accurate enough for my purposes.

An instrument used for measurements has a known measurement imprecision of $CV = 10 \%$. Thus, if the variable to be measured has a true value $x_{true}$, the range of possible measured values will be given by:

$x_{measured} \sim \mathcal{N}(x_{true},\,(0.1\cdot x_{true})^2)$

Say we have two measurements, $x_{1_{measured}} = 100$ and $x_{2_{measured}} = 50$. We can easily calculate the 95% CI for $x_{1_{true}}$ and $x_{2_{true}}$ in R:

cv <- .1
x1_measured <- 100; x2_measured <- 50    
x1_true_ci <- x1_measured / qnorm(c(.975, .025), 1, cv)
x2_true_ci <- x2_measured / qnorm(c(.975, .025), 1, cv)

However, I would like to determine a 95% CI for the ratio $\frac{x_{2_{true}}}{x_{1_{true}}}$. My current approach is to simulate ratios and then use quantile() to find the 2.5% and 97.5% quantiles as follows:

ratio_sim <- (x2_measured / rnorm(1e6, 1, cv)) / (x1_measured / rnorm(1e6, 1, cv))
ratio_ci <- quantile(ratio_sim, c(.025, .975))

log(ratio_sim)appears to be close to normally distributed, although I would assume that it is actually a kind of ratio distribution? Anyway, calculating the 95% CI from log(ratio_sim) yields values very similar to the quantiles calculated previously:

ratio_ci2 <- qlnorm(c(.025, .975), mean(log(ratio_sim)), sd(log(ratio_sim)))

My question: is there a more direct, less computationally intensive way to estimate the 95 % CI for the ratio, without using simulation? I noticed that x2_measured / x1_measured * sqrt(2) * cv gives values somewhat close to sd(ratio_sim), but I don't think it's accurate enough for my purposes.

An instrument used for measurements has a known measurement imprecision of $CV = 10 \%$. Thus, if the variable to be measured has a true value $x_{true}$, the range of possible measured values will be given by:

$x_{measured} \sim \mathcal{N}(x_{true},\,(0.1\cdot x_{true})^2)$

Say we have two measurements, $x_{1_{measured}} = 100$ and $x_{2_{measured}} = 50$. We can easily calculate the 95% CI for $x_{1_{true}}$ and $x_{2_{true}}$ in R:

cv <- .1
x1_measured <- 100; x2_measured <- 50    
x1_true_ci <- x1_measured / qnorm(c(.975, .025), 1, cv)
x2_true_ci <- x2_measured / qnorm(c(.975, .025), 1, cv)

However, I would like to determine a 95% CI for the ratio $\frac{x_{2_{true}}}{x_{1_{true}}}$. My current approach is to simulate ratios and then use quantile() to find the 2.5% and 97.5% quantiles as follows:

ratio_sim <- (x2_measured / rnorm(1e6, 1, cv)) / (x1_measured / rnorm(1e6, 1, cv))
ratio_ci <- quantile(ratio_sim, c(.025, .975))

log(ratio_sim)appears to be close to normally distributed, although I would assume that it is actually a kind of ratio distribution? Anyway, calculating the 95% CI from log(ratio_sim) yields values very similar to the quantiles calculated previously:

ratio_ci2 <- qlnorm(c(.025, .975), mean(log(ratio_sim)), sd(log(ratio_sim)))

My question: is there a more direct, less computationally intensive way to estimate the 95 % CI for the ratio, without using simulation?

Became Hot Network Question
Wrong description in title. The variables themselves are not normally distributed, although the measurement imprecision is.
Link

95 % CI for ratio of normally distributed variables subject to measurement imprecision

Source Link

95 % CI for ratio of normally distributed variables

An instrument used for measurements has a known measurement imprecision of $CV = 10 \%$. Thus, if the variable to be measured has a true value $x_{true}$, the range of possible measured values will be given by:

$x_{measured} \sim \mathcal{N}(x_{true},\,(0.1\cdot x_{true})^2)$

Say we have two measurements, $x_{1_{measured}} = 100$ and $x_{2_{measured}} = 50$. We can easily calculate the 95% CI for $x_{1_{true}}$ and $x_{2_{true}}$ in R:

cv <- .1
x1_measured <- 100; x2_measured <- 50    
x1_true_ci <- x1_measured / qnorm(c(.975, .025), 1, cv)
x2_true_ci <- x2_measured / qnorm(c(.975, .025), 1, cv)

However, I would like to determine a 95% CI for the ratio $\frac{x_{2_{true}}}{x_{1_{true}}}$. My current approach is to simulate ratios and then use quantile() to find the 2.5% and 97.5% quantiles as follows:

ratio_sim <- (x2_measured / rnorm(1e6, 1, cv)) / (x1_measured / rnorm(1e6, 1, cv))
ratio_ci <- quantile(ratio_sim, c(.025, .975))

log(ratio_sim)appears to be close to normally distributed, although I would assume that it is actually a kind of ratio distribution? Anyway, calculating the 95% CI from log(ratio_sim) yields values very similar to the quantiles calculated previously:

ratio_ci2 <- qlnorm(c(.025, .975), mean(log(ratio_sim)), sd(log(ratio_sim)))

My question: is there a more direct, less computationally intensive way to estimate the 95 % CI for the ratio, without using simulation? I noticed that x2_measured / x1_measured * sqrt(2) * cv gives values somewhat close to sd(ratio_sim), but I don't think it's accurate enough for my purposes.