集計

24.1.2. 集計

文字の出現回数のデータをもとに,頻度や情報量を計算します.

合計 #

全文字数を計算しましょう.各文字の出現回数の和,つまり,B3からB28までの和を求めます.

そのために,B29 のセルに合計を表す式 =sum(B3:B28) と入力します. = は計算式の目印,sum は合計する関数,B3:B28 の部分は集計対象のセルの集合 (range) に相当します.

レンジの部分は,マウスで視覚的に入力することもできます.

スライドはクリックで拡大します.以下同じ.
式の入力の訂正は,キーボード入力時はDelキー,マウスでrangeを選択時は Escキーを押して全体を取り消すことがお勧めです.

正しく入力すると,B29の計算結果は713になります.

出現確率 #

各文字について,出現回数を全文字数で割ると,頻度 (確率) が得られます.

C3 から C29 に式を書いて,値を求めましょう. 右のようにしたいです. 似たような式を 20回以上入力するのは大変ですし,ミスの元なので避けましょう.
C3 = B3 / B29
C4 = B4 / B29
...
C29 = B29 / B29

ここでは2つの方法,コピーペーストと オートフィルを紹介します. どちらの場合も,最初に C3 のセルに種となる式を入力して,その式を他のセルに反映させます.

Google sheet では,C3 を入れた時点で,C29まで同様に埋めますか? と提案されると思います. 提案が意図通りならそれを採用すれば,以下の手順は不要です.提案が意図と異なった時のために,手順を確認しておきましょう.

セル C3=B3/B$29 と入力します.= は式の目印,B3 はセルB3 の値,B$29 もセルB29 の値です.$の有無は,今は影響しません.あとで,効果があります.

ひとまず セル C3 に 文字 A の値が表示されました.

これをコピーペーストで他のセルに反映させてみましょう.

右クリックメニューから「コピー」を選ぶとアクティブなセルの内容がクリップボードにコピーされ,セルが点線で囲まれます. ,別のセルをアクティブにして「ペースト」を選ぶとクリップボードの内容がコピーされます.以下,一連の操作を「(コピー元)を(コピー先)にコピー」と表します.

セル C3D3 にコピーペーストして,数式バーを確認しましょう.=B4/B$29 となっているはずです.

式をペーストした際に,参照を自動で書き換える (相対位置で考える) 機能は,表計算ソフトウェアの便利な機能の一つです. このような書き換わる参照を,相対参照 と呼びます.書き換わらない参照を 絶対参照 と呼びます. 相対参照は数式のセルからの相対的な座標でセルを参照しているので,セルの数式のコピーやセルの移動をするとその分参照先も移動します.

先ほど使った B$29 の,$29 の部分が行に関する絶対参照です.これにより,上下方向に関しては常に 29 になります. 列 B については相対参照なので,横方向に関しては変化します.縦だけ絶対参照にする $B29 や縦横両方絶対参照にする $B$29 などを適宜使い分けましょう.

連続する列または行に式を複製する場合は,オートフィルを使うと便利です. アクティブなセルの右下の記号をうまくドラッグすると,ドラッグで覆った長方形の範囲のセルに,一括でペーストすることができます.

B29の数式内では列番号Bが相対参照なので,1つ右のセルにコピーするとCに変わります.よってC29の内容はC3からC28までの総和になります.

情報量 #

確率 \(p_a\) で生ずる 事象 \(a\) の情報量は, \(-\log_2(p_a)\) でした. 各文字の情報量を,シートの D列に求めてみましょう.

セルD3 の式は,=-log(C3, 2) になります.式中の log(a,b)(\log_b(a)) の意味です.つまり,底が2の対数を計算しています.先ほど同様に,D28まで式を複製してください.

出現確率pが0のときの情報量Iは実際には無限大になりますが,ここでは計算の便宜のため0としています.pが0のときのp*Iが0であれば平均情報量は正しく求まります.

平均情報量 #

事象の集合 \(A\) についての,平均情報量は \(\sum_{a\in A} p_a \log_2(p_a)\) でした. ここでは,各文字 \(a\) についての, \(p_a \log_2(p_a)\) を E3 から E28 に求めて,最後に合計を E29 に求めましょう.

セル E3 の式は,=C3*D3 になります.これを,E4 から E28 まで複製してください.

セル E29 の式は,=sum(E3:E28) です. 関数 sum は,このページの最初でも使いました.

以上で例文の平均情報量が求まりました.

文字のカウント 集計 グラフ描画と並べ替え
このサイトは開発版の はいぱーワークブック です.