我在互联网上找到了(x,y)表格式的一些数据,我想将它简单地用于t检验。我从互联网上复制并粘贴,在R
上看起来像这样20.79 194.5 23.89 200.9 28.49 209.5
20.79 194.3 23.99 201.1 27.76 208.6
22.40 197.9 24.02 201.4 29.04 210.7
22.67 198.4 24.01 201.3 29.88 211.9
23.15 199.4 25.14 203.6 30.06 212.2
23.35 199.9 26.57 204.6
我想把它变成一个data.frame,其中第一列(主要是20的值)是x
,第二列(值为190-220)是y
。我玩过它,但是目前我被列入了一个列表,当我尝试
as.numeric(mylist)
它给我一条错误信息,内容为
"Error: (list) object cannot be coerced to type 'double' "
答案 0 :(得分:1)
有时,使用scan
读取数字元素然后根据序列的顺序将它们配置为矩阵很有用。
> inp <- scan(text="20.79 194.5 23.89 200.9 28.49 209.5
+ 20.79 194.3 23.99 201.1 27.76 208.6
+ 22.40 197.9 24.02 201.4 29.04 210.7
+ 22.67 198.4 24.01 201.3 29.88 211.9
+ 23.15 199.4 25.14 203.6 30.06 212.2
+ 23.35 199.9 26.57 204.6")
Read 34 items
> M.in <- matrix(inp, ncol=2, byrow=TRUE)
> M.in
[,1] [,2]
[1,] 20.79 194.5
[2,] 23.89 200.9
[3,] 28.49 209.5
[4,] 20.79 194.3
[5,] 23.99 201.1
[6,] 27.76 208.6
[7,] 22.40 197.9
[8,] 24.02 201.4
[9,] 29.04 210.7
[10,] 22.67 198.4
[11,] 24.01 201.3
[12,] 29.88 211.9
[13,] 23.15 199.4
[14,] 25.14 203.6
[15,] 30.06 212.2
[16,] 23.35 199.9
[17,] 26.57 204.6
现在你可以做到:
> t.test(M.in[,1], M.in[,2])
Welch Two Sample t-test
data: M.in[, 1] and M.in[, 2]
t = -112.7824, df = 24.18, p-value < 2.2e-16
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-181.1483 -174.6400
sample estimates:
mean of x mean of y
25.05882 202.95294
您可以使用as.data.frame
将M.in
转换为数据框。)如果您确信将这些文件分成六个一组,则可以使用以下方法访问它们:
first6 <- M.in[ 1:6, ]
答案 1 :(得分:0)
您可以直接将文字传递给read.table
;复杂的是,由于缺少值,您还需要fill=NA
。
d <- read.table(text="20.79 194.5 23.89 200.9 28.49 209.5
20.79 194.3 23.99 201.1 27.76 208.6
22.40 197.9 24.02 201.4 29.04 210.7
22.67 198.4 24.01 201.3 29.88 211.9
23.15 199.4 25.14 203.6 30.06 212.2
23.35 199.9 26.57 204.6", fill=NA)
names(d)[1:2] <- c("x", "y")
# x y V3 V4 V5 V6
# 1 20.79 194.5 23.89 200.9 28.49 209.5
# 2 20.79 194.3 23.99 201.1 27.76 208.6
# 3 22.40 197.9 24.02 201.4 29.04 210.7
# 4 22.67 198.4 24.01 201.3 29.88 211.9
# 5 23.15 199.4 25.14 203.6 30.06 212.2
# 6 23.35 199.9 26.57 204.6 NA NA