I have a problem using data from a tab delimited data file imported with read.delim.
Most of the columns contain numerical data which I need to do a
I have been able to reproduce your error message with the following small example:
x = as.factor(1:5)
y = as.factor(1:5)
t.test(x, y)
yields
Error in if (stderr < 10 * .Machine$double.eps * max(abs(mx), abs(my))) stop("data are essentially constant") :
missing value where TRUE/FALSE needed
In addition: Warning messages:
1: In mean.default(x) : argument is not numeric or logical: returning NA
2: In mean.default(y) : argument is not numeric or logical: returning NA
The problem is you are trying to perform a t-test on non-numeric vectors. Addition likewise is not defined for factors:
x + y
yields
[1] NA NA NA NA NA
Warning message:
In Ops.factor(x, y) : + not meaningful for factors
The warning gives keen insight as to what is amiss and also explains why your t-test is not working.
To fix the problem, you need to do as ilya suggests: convert your vectors to numeric with as.numeric(as.character())