How to | 列のデータに対して計算を行う方法
How to | 列のデータに対して計算を行う方法
データ内の列に対して,特に列が変数を表す場合には,計算を行う必要があることがよくある.関数によっては長方形配列が与えられるときに自動的に列のデータに操作するものもあるが,列に操作させるためにデータを操作する必要がある関数もある.
作業を行うデータを作成する(SeedRandomによって,予想通りの結果が確実に得られるようにする):
data = BlockRandom[SeedRandom[3];
RandomInteger[10, {10, 4}]]Wolfram言語は,他のリスト内でリストをグループ化することによってdataを特徴付ける.それぞれのリストはすべてdataの行列内の行として解釈される:
MatrixForm[data]Grid関数を使ってもdataを同じように表示することができるが,中カッコは付かない:
Grid[data]デフォルトで多くの関数は,リストの長方形リストが引数として与えられる場合には各列に対して操作を行う.
Mean[data]StandardDeviation[data]Median[data]また,個々の列を計算のために選択することもできる.以下では,dataの第1列が選択されている:
data[[All, 1]]Mean[data[[All, 1]]]StandardDeviation[data[[All, 1]]]Median[data[[All, 1]]]3列以上の行列について,行を別々のデータとしてプロットする:
ListLinePlot[ data]ListLinePlot[ Transpose[data]]ベクトルについて働きかける関数については,列に対して操作を行うために,関数を転置されたdataにマップする:
Map[Normalize, Transpose[data]]Transpose[%]Map[Max, Transpose[data]]