Skip to main content
added 74 characters in body
Source Link

I have a dataset with 300 rows/genes and 900 columns/samples. The data were collected in 10 different batches, and study design was balanced in all of the batches. However, there is a huge difference in variances of each gene across multiple batches (1-5 units). I assume because of this, I am not getting statistically significant results because higher variance batches reduce the t-statistics.

One approach, I was taking is removing those high variance batches and do t-tests on small variance batches. However, is there any method that I can use which can account for different batch variances?

b <- rnorm(20, mean = 13, sd = 2)
boxplot(a,b)
t.test(a,b)
    data:  a and b
    t = 2.8167, df = 36.319, p-value = 0.007799

Now I add another batch with same means but higher standard deviation-

B <- c(b,rnorm(20, mean = 13, sd = 5))
boxplot(A,B)
t.test(A,B)
    data:  A and B
    t = 0.69185, df = 77.973, p-value = 0.4911

As I add another batch with higher standard deviation, I lose significance.

I have a dataset with 300 rows/genes and 900 columns/samples. The data were collected in 10 different batches, and study design was balanced in all of the batches. However, there is a huge difference in variances of each gene across multiple batches (1-5 units). I assume because of this, I am not getting statistically significant results because higher variance batches reduce the t-statistics.

One approach, I was taking is removing those high variance batches and do t-tests on small variance batches. However, is there any method that I can use which can account for different batch variances?

b <- rnorm(20, mean = 13, sd = 2)
boxplot(a,b)
t.test(a,b)
    data:  a and b
    t = 2.8167, df = 36.319, p-value = 0.007799
B <- c(b,rnorm(20, mean = 13, sd = 5))
boxplot(A,B)
t.test(A,B)
    data:  A and B
    t = 0.69185, df = 77.973, p-value = 0.4911

As I add another batch with higher standard deviation, I lose significance.

I have a dataset with 300 rows/genes and 900 columns/samples. The data were collected in 10 different batches, and study design was balanced in all of the batches. However, there is a huge difference in variances of each gene across multiple batches (1-5 units). I assume because of this, I am not getting statistically significant results because higher variance batches reduce the t-statistics.

One approach, I was taking is removing those high variance batches and do t-tests on small variance batches. However, is there any method that I can use which can account for different batch variances?

b <- rnorm(20, mean = 13, sd = 2)
boxplot(a,b)
t.test(a,b)
    data:  a and b
    t = 2.8167, df = 36.319, p-value = 0.007799

Now I add another batch with same means but higher standard deviation-

B <- c(b,rnorm(20, mean = 13, sd = 5))
boxplot(A,B)
t.test(A,B)
    data:  A and B
    t = 0.69185, df = 77.973, p-value = 0.4911

As I add another batch with higher standard deviation, I lose significance.

Added command line output of t.test
Source Link

I have a dataset with 300 rows/genes and 900 columns/samples. The data were collected in 10 different batches, and study design was balanced in all of the batches. However, there is a huge difference in variances of each gene across multiple batches (1-5 units). I assume because of this, I am not getting statistically significant results because higher variance batches reduce the t-statistics.

One approach, I was taking is removing those high variance batches and do t-tests on small variance batches. However, is there any method that I can use which can account for different batch variances?

b <- rnorm(20, mean = 13, sd = 2)
boxplot(a,b)
t.test(a,b)
A <- c(  data:  a,rnorm(20 and b
    t = 2.8167, meandf = 1536.319, sdp-value = 5))0.007799
 
B <- c(b,rnorm(20, mean = 13, sd = 5))
boxplot(A,B)
t.test(A,B)
    data:  A and B
    t = 0.69185, df = 77.973, p-value = 0.4911

As I add another batch with higher standard deviation, I lose significance.

I have a dataset with 300 rows/genes and 900 columns/samples. The data were collected in 10 different batches, and study design was balanced in all of the batches. However, there is a huge difference in variances of each gene across multiple batches (1-5 units). I assume because of this, I am not getting statistically significant results because higher variance batches reduce the t-statistics.

One approach, I was taking is removing those high variance batches and do t-tests on small variance batches. However, is there any method that I can use which can account for different batch variances?

b <- rnorm(20, mean = 13, sd = 2)
boxplot(a,b)
t.test(a,b)
A <- c(a,rnorm(20, mean = 15, sd = 5))
B <- c(b,rnorm(20, mean = 13, sd = 5))
boxplot(A,B)
t.test(A,B)

As I add another batch with higher standard deviation, I lose significance.

I have a dataset with 300 rows/genes and 900 columns/samples. The data were collected in 10 different batches, and study design was balanced in all of the batches. However, there is a huge difference in variances of each gene across multiple batches (1-5 units). I assume because of this, I am not getting statistically significant results because higher variance batches reduce the t-statistics.

One approach, I was taking is removing those high variance batches and do t-tests on small variance batches. However, is there any method that I can use which can account for different batch variances?

b <- rnorm(20, mean = 13, sd = 2)
boxplot(a,b)
t.test(a,b)
    data:  a and b
    t = 2.8167, df = 36.319, p-value = 0.007799
 
B <- c(b,rnorm(20, mean = 13, sd = 5))
boxplot(A,B)
t.test(A,B)
    data:  A and B
    t = 0.69185, df = 77.973, p-value = 0.4911

As I add another batch with higher standard deviation, I lose significance.

Added some Rcode to explain my question
Source Link

I have a dataset with 300 rows/genes and 900 columns/samples. The data were collected in 10 different batches, and study design was balanced in all of the batches. However, there is a huge difference in variances of each gene across multiple batches (1-5 units). I assume because of this, I am not getting statistically significant results because higher variance batches reduce the t-statistics.

One approach, I was taking is removing those high variance batches and do t-tests on small variance batches. However, is there any method that I can use which can account for different batch variances?

b <- rnorm(20, mean = 13, sd = 2)
boxplot(a,b)
t.test(a,b)
A <- c(a,rnorm(20, mean = 15, sd = 5))
B <- c(b,rnorm(20, mean = 13, sd = 5))
boxplot(A,B)
t.test(A,B)

As I add another batch with higher standard deviation, I lose significance.

I have a dataset with 300 rows/genes and 900 columns/samples. The data were collected in 10 different batches, and study design was balanced in all of the batches. However, there is a huge difference in variances of each gene across multiple batches (1-5 units). I assume because of this, I am not getting statistically significant results because higher variance batches reduce the t-statistics.

One approach, I was taking is removing those high variance batches and do t-tests on small variance batches. However, is there any method that I can use which can account for different batch variances?

I have a dataset with 300 rows/genes and 900 columns/samples. The data were collected in 10 different batches, and study design was balanced in all of the batches. However, there is a huge difference in variances of each gene across multiple batches (1-5 units). I assume because of this, I am not getting statistically significant results because higher variance batches reduce the t-statistics.

One approach, I was taking is removing those high variance batches and do t-tests on small variance batches. However, is there any method that I can use which can account for different batch variances?

b <- rnorm(20, mean = 13, sd = 2)
boxplot(a,b)
t.test(a,b)
A <- c(a,rnorm(20, mean = 15, sd = 5))
B <- c(b,rnorm(20, mean = 13, sd = 5))
boxplot(A,B)
t.test(A,B)

As I add another batch with higher standard deviation, I lose significance.

Source Link
Loading