アプリ版:「スタンプのみでお礼する」機能のリリースについて

お世話になります。表題の件について教えてください。条件は、以下の質問と同じにします。

http://oshiete.goo.ne.jp/qa/7556541.html

上記の以前の質問では、一定期間の平均値の算出方法を御教えていただきましたが、
今回は、同じく一定期間での標準偏差の算出方法をお教えいただきたく、何卒、よろしくおねいがいい

A 回答 (5件)

ん?


所定の日付のデータが無ければ、そもそも平均から出せなかったはずですが。


でもまぁ、そういう事もあるなら別のやり方で。

D1に開始日
D2に終了日
D3に
=STDEV(IF((D1<=A1:A999)*(A1:A999<=D2),B1:B999))
と記入し、この式はコントロールキーとシフトキーを押しながらEnterで入力する
のようにした方が簡単です。
    • good
    • 0

回答No3です。


E1セルには次の式でもよいでしょう。

=AVERAGE(INDEX(B:B,IF(ISERROR(MATCH(C$1-0.1,A:A,1)),2,MATCH(C$1-0.1,A:A,1)+1)):INDEX(B:B,MATCH(D$1,A:A,1)))

F1セルには次の式でもよいでしょう。

=STDEV(INDEX(B:B,IF(ISERROR(MATCH(C$1-0.1,A:A,1)),2,MATCH(C$1-0.1,A:A,1)+1)):INDEX(B:B,MATCH(D$1,A:A,1)))
    • good
    • 0

使われている式が間違っています。

例えば2/10から3/9までの平均値や標準偏差を計算する場合に、使われている式では2/10や3/9の日付が入力されていなければエラーとなってしまいます。
例えば次のようにすればよいでしょう
A2セルから下方に日付が昇順で並んでいるとします。B2セルには重量などの数値が並んでいるとします。そこで2/10から3/9までの期間の開始の日付をC1セルに2012/2/10のように、終了の日付を2012/3/9のようにD1セルに入力するとしてその平均値をE1セルに表示させるとしたら次の式をE1セルに入力します。

=AVERAGE(INDEX(B:B,IF(COUNTIF(A:A,C$1)=1,MATCH(C$1,A:A,0),IF(ISERROR(MATCH(C$1,A:A,1)),2,MATCH(C$1,A:A,1)+1))):INDEX(B:B,IF(COUNTIF(A:A,D$1)=1,MATCH(D$1,A:A,0),MATCH(D$1,A:A,1))))

標準偏差をF1セルに表示させるとしたら次の式をF1セルに入力します。

=STDEV(INDEX(B:B,IF(COUNTIF(A:A,C$1)=1,MATCH(C$1,A:A,0),IF(ISERROR(MATCH(C$1,A:A,1)),2,MATCH(C$1,A:A,1)+1))):INDEX(B:B,IF(COUNTIF(A:A,D$1)=1,MATCH(D$1,A:A,0),MATCH(D$1,A:A,1))))

なお、いずれの式でもCtrl+Shift+Enterなどの操作は必要ありません。
    • good
    • 0

ん?


>#N/Aになってしまいます

それは単純にデータの間違いで、MATCH関数で探させている日付を見つられていない状況です。
正しいデータで計算させてください。

ちなみにCtrl+Shift+Enterする必要も全くありません。



#参考
たとえばこちらのような質問相談投稿板でよく初心者さんから寄せられる間違いとしては、8月15日を計算したくて数式にいきなし 2012/8/15 なんて書き込んじゃうようなポカをしていませんか。

よく見かける間違いの例:
=STDEV(INDEX(B:B,MATCH(2012/8/10,A:A,0)):INDEX(B:B,MATCH(2012/8/15,A:A,0)))

よく見かける間違いの例:
=STDEV(INDEX(B:B,MATCH("2012/8/10",A:A,0)):INDEX(B:B,MATCH("2012/8/15",A:A,0)))



正しい計算例:
D1セルに 2012/8/10 を記入しておく
D2セルに 2012/8/15 を記入しておく
D3セルに
=STDEV(INDEX(B:B,MATCH(D1,A:A,0)):INDEX(B:B,MATCH(D2,A:A,0)))
と計算させる

正しい計算例:
=STDEV(INDEX(B:B,MATCH(DATE(2012,8,10),A:A,0)):INDEX(B:B,MATCH(DATE(2012,8,15),A:A,0)))

正しい計算例:
=STDEV(INDEX(B:B,MATCH(DATEVALUE("2012/8/10"),A:A,0)):INDEX(B:B,MATCH(DATEVALUE("2012/8/15"),A:A,0)))




#補足
「計算できませんエラーになります」で困っているときは、あなたが具体的にどんな式を書いて答えが出なかったのか、実際にあなたがエクセルに書いて失敗した「その数式」を手抜きせずその通りにご相談に書いて情報提供してください。
また必要に応じて「あなたが準備して計算させた実際のデータ」も、具体的に情報提供してください。
    • good
    • 0

平均の代わりに標準偏差を求める関数に差し替えるだけです。



=STDEV(INDEX(B:B,MATCH(開始日,A:A,0)):INDEX(B:B,MATCH(終了日,A:A,0)))

この回答への補足

そうなんですが、#N/Aになってしまいます。ちなみに、shift+ctrl+returnは押しています。

補足日時:2012/08/01 15:49
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!