2017-07-04 3 views
1

一連のペア測定(各サンプルに2つ)があります。私は各ペアの平均とそれらのペア平均値に基づいて一般的な平均を計算する必要がありますが、私は、特定のしきい値を超えていないペアワイズ平均を含めることができます。基準に基づいてAVERAGEまたはSTDEVのExcel式で特定の計算値をスキップする(セル自体ではない)

私は、追加の行/列を作成することなく、上記のすべてを考慮した一般的な平均のためのエクセル式を試してみようとしています。今

、式

=AVERAGE(IF(ABS(A1-A2)<$C$1,AVERAGE(A1,A2)),IF(ABS(A7-A8)<$C$1,AVERAGE(A7,A8)), ...) 

...それはゼロで($ C $ 1の値)がしきい値を超えて、これらのペアごとの手段を置き換えるために、彼らはちょうどする必要がながら、仕事をしていませんスキップしました。 「AVERAGEIF」は、連続しない範囲を受け入れないため(少なくとも入力されたときは)、連続しない範囲を作成するために「間接」を使用しても式を受け入れないために役立たないため動作しません。どんな助けもありがたい。

+0

。実際には、パフォーマンスの10倍の9倍がはるかに優れています。さらに、スプレッドシートを理解しやすくなります。 – jkpieterse

答えて

0

ここではヘルパーカラムを使用していないため、フォーミュラが醜く見えますが、目的の結果が得られます。試してみてください。

=AVERAGE(IF(CHOOSE({1;2;3},A1-A2,A4-A5,A7-A8)<C1,CHOOSE({1;2;3},AVERAGE(A1,A2),AVERAGE(A4,A5),AVERAGE(A7,A8)))) 

これには、 + を入力しはCtrl +Shiftキーを押すことによって、それをコミット配列数式です。

上記の式と式の結果の違いを見て、あなたが言及したように間違った結果を生み出しているのを見てください。

enter image description here

+0

ありがとうございました。 CHOOSE関数の便利なメモ – prishly

0

Excelは私が考えるいくつかの神秘的な行動を持っているところです。私が最初に考え

は作ることだった各if文のリターン「」条件が

=AVERAGE(IF(ABS(A1-A2)<$C$1,AVERAGE(A1,A2),""),IF(ABS(A7-A8)<$C$1,AVERAGE(A7,A8),"")) 

満足していなかったが、これはただあなたにエラーを出します。あなたはそれが空のセルへの参照を返す作る場合

しかし、それは動作します(B1を言う)

=AVERAGE(IF(ABS(A1-A2)<$C$1,AVERAGE(A1,A2),$B$1),IF(ABS(A7-A8)<$C$1,AVERAGE(A7,A8),$B$1)) 

細かいヘルパー列を使うことには何も問題はありません

enter image description here

+0

ありがとうございました。確かに非常にエレガント。私は空の文字列で立ち往生した... – prishly

+0

あなたは大歓迎です!そのセル(B1)にバリデーションルールを設定するのは賢明かもしれませんので、何も誤って入れられないようにします;-) –

関連する問題