0

インターネットで (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

x最初の列 (ほとんどが 20 代の値) がで、2 番目の列 (値が 190 ~ 220) が である data.frame にしたいと考えていますy。私はそれをいじってみましたが、現在、私はリストにこだわっています。

   as.numeric(mylist)

それは私に次のようなエラーメッセージを表示します

"Error: (list) object cannot be coerced to type 'double' "
4

2 に答える 2

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これらが 6 つのグループに分離されていると確信M.inしている場合は、次を使用してアクセスできます。

first6 <- M.in[ 1:6, ]
于 2013-01-08T22:08:32.020 に答える
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
于 2013-01-08T22:03:06.507 に答える