★ エクセルの使い方 ★

558. エクセルの使い方 なーど 2003/08/27 (水) 08:12
├564. Re: エクセルの使い方 青木繁伸 2003/08/27 (水) 23:41
└560. Re: エクセルの使い方 青木繁伸 2003/08/27 (水) 09:35
 └562. Re^2: エクセルの使い方 なーど 2003/08/27 (水) 11:21


558. エクセルの使い方 なーど  2003/08/27 (水) 08:12
Z‐SCOREを求める作業で,エクセルのマクロを使っています。まず生データをカラム上にインプットして(A1〜A100),最下行の下(A101)に平均,そのさらに下(A102)にSTDEVを算出させています。これら二つの数値をコピーして値のみをさらに下行(A103,A104)にペーストします。これらを基に隣のB列に=(A1-A103)/A104とやりたいのですが,最初のセル(B1)から下にドラッグすると,A103,A104の続きを読み込もうとして0割る0になってしまいます。マクロなのでこれらをデータセットに固有なA103,A104の値で固定したいのです。良い知恵はないでしょうか?現在は平均とSTDEVをデータの下にデータと同じ数だけコピーペーストすることによって回避しております。統計とは直接無関係かもしれませんがどうか宜しくお願いします。

     [このページのトップへ]


564. Re: エクセルの使い方 青木繁伸  2003/08/27 (水) 23:41
R だと,以下のようになります。
簡単なのかどうなのかは知りませんが。
データの定義(ファイルから読むこともできる)
x <- c(1,2,3,4,5)

Z スコアを求める関数
scale(x)
           [,1]
[1,] -1.2649111
[2,] -0.6324555
[3,]  0.0000000
[4,]  0.6324555
[5,]  1.2649111
attr(,"scaled:center") これはおまけで,平均値
[1] 3
attr(,"scaled:scale") 同じく,標準偏差
[1] 1.581139

     [このページのトップへ]


560. Re: エクセルの使い方 青木繁伸  2003/08/27 (水) 09:35
>最下行の下(A101)に平均,そのさらに下(A102)にSTDEVを算出させています。これら二つの数値をコピーして値のみをさらに下行(A103,A104)にペーストします。これらを基に隣のB列に=(A1-A103)/A104と

=(A1-$A$103)/$A$104

とするのです。相対指定と相対指定は,エクセルの使い方の最初の方に出てくる重要な操作法です。

「(A103,A104)にペースト」する必要も無いのですが,なぜそのようにしますか?

# standardize(x, mean, sd) という関数もあります。それを使うまでもないというか,なんでそんな関数が必要なのか理解できないが。

# エクセルにはいろいろ問題があるが,せめて正しく・合理的に使いたい。

     [このページのトップへ]


562. Re^2: エクセルの使い方 なーど  2003/08/27 (水) 11:21
> >最下行の下(A101)に平均,そのさらに下(A102)にSTDEVを算出させています。これら二つの数値をコピーして値のみをさらに下行(A103,A104)にペーストします。これらを基に隣のB列に=(A1-A103)/A104と
>
> =(A1-$A$103)/$A$104

>

早いレス有難うございます。やってみます。

     [このページのトップへ]


● 「統計学関連なんでもあり」の過去ログ--- 025 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る