2016-12-15 9 views
1

動的にフィルタリングされたテーブルに基づいて加重平均を求めるソリューションを探しています。ここで私が持っているものです。フィルタリングされたテーブルの加重平均を取得

カラムA:URLのリスト、 列B:番号、 列C:割合

/page     100000 20% 
/brochures.htm?en  27443 75,30% 
/brochures.htm?fr  1656 67,33% 
/brochures.htm?it  483  75,00% 
/brochures.htm?fr-fr 6  0,00% 

私が欲しいものは、私の加重割合を与える式であります"/ brochures/htm"で始まるページ、この場合は74,83%です。私は = FILTERでテーブルをフィルタリング中間シートで2回でそれを行うことができてい

(:; REGEXMATCH(A1 C5:A1 A5; "/ brochures.html *"))で、次いで = SUMPRODUCT(C1:C5; B1:B5)/ SUM(B1:B5) で加重平均を計算することで3番目のシートを作成しますが、それは私のニーズにとっては良い解決策ではありません。

誰でも手助けできますか?私は74,83%にどのように到達するのかを簡単に理解できるように、Googleシートを作成しました。 - >https://docs.google.com/spreadsheets/d/1Q-ydRSOdoGN2wVj7Z4XWglz-0U7pL3_xMeyGdRB2K84/edit?usp=sharing

+0

私たちがあなたのお手伝いをしやすくするために、あなたのデータについてより詳細な情報を提供してください。あなたが提供したデータからあなたが投稿した結果をどのように得るのかわかりません。 [例の提供方法](http:// stackoverflow。)をお読みください。com/help/mcve) –

+0

@RonRosenfeldの理解に役立つGoogleシートを追加しました;-) –

答えて

1

エクセルください。これを達成するために配列式を使うことができます。入力の代わりに、ちょうど私がExcelで上記のサンプル・データでこれをテストし、それが74.83パーセントで出てきた

=SUMPRODUCT(IF(LEFT(A1:A5,14)="/brochures.htm",B1:B5,0),C1:C5)/SUM(IF(LEFT(A1:A5,14)="/brochures.htm",B1:B5,0)) 

式を入力した後に入力します+ Shiftキー+ Ctrlキーを使用してください。 =ArrayFormula(SUMPRODUCT(IF(LEFT(A1:A5,14)="/brochures.htm",B1:B5,0),C1:C5)/SUM(IF(LEFT(A1:A5,14)="/brochures.htm",B1:B5,0)))

または最寄りの設定が米国と異なっている場合は代わりに昏睡,をセミコロン;を使用する:私は、これは動作します、これはGoogleのシートの

に役立ちます願っています。

+0

私はそれを試しましたが、エラーが発生しました。 「ctrl + shift + enterを使用する」とはどういう意味ですか?そのショートカットはいつ使うべきですか? @ maxhob17 –

+0

Excelでは、数式を入力した後にEnterだけではなく、Ctrl + Shift + Enterを使用すると、通常のものとは対照的に配列式が作成されます。http://www.excel-easy.com/functions/array-formulas .html – maxhob17

0

私は、この式は、(Googleシートのみを)助けになると信じて:Col1 like '/brochures.htm%'

2番目のクエリ が加重見つける:

=QUERY(QUERY(QUERY({A3:C8};"select 'avg', Col2*Col3, Col2 where Col1 like '/brochures.htm%'");"select Col1, sum(Col2)/sum(Col3) group by Col1");"select Col2 Label Col2 ''")

まずクエリは、条件が満たされたときCol2*Col3, Col2を選択フィルタリングされたテーブルの平均値

サードクエリ はあなたのサンプルでは2番目のクエリから

のみ結果の数を取得します。 https://docs.google.com/spreadsheets/d/1Q-ydRSOdoGN2wVj7Z4XWglz-0U7pL3_xMeyGdRB2K84/edit#gid=1380706652


この式を使用することの利点は、あなたが一度だけデータを参照しなければならないということで、さらにsetting tools with queryの式もあります。