How to | 表に見出しを付ける方法
Wolfram言語では,大変柔軟な形で表の見出しを表示したりスタイル化したりすることができる.PrependあるいはArrayFlattenを使って行や列に見出しを加えてから,Gridをそのスタイルの要素とともに使って,その見出しを表に表示することができる.
Wolfram言語では,表を使ったデータ表示の制御やカスタマイズが可能である.見出しは,表のその他の要素と同じように扱うことができる.
m = Table[i ^ 2 - j ^ 3, {i, 3}, {j, 4}]TableOfValues1 = Prepend[m, {"First", "Second", "Third", "Fourth"}]Gridを使って列の見出し付きのデータを表示する:
Grid[TableOfValues1]MapThreadを使って見出しを行の先頭に付ける:
TableOfValues2 = MapThread[Prepend, {TableOfValues1, {"", "1st", "2nd", "3rd"}}]GridをFrameと一緒に使って,行と列の見出しが付いたデータを表示する:
Grid[TableOfValues2, Frame -> All]n = Table[Graphics[Circle[], AspectRatio -> RandomReal[]], {3}, {5}];GraphicsGridを使って格子の中に円を表示する:
GraphicsGrid[n, Frame -> All]headings = Style[#, {Orange, Bold, 12}]& /@ {"One", "Two", "Three", "Four", "Five"}TableOfCircles = Prepend[n, headings];GraphicsGridを使ってスタイルを付けた表を見る:
GraphicsGrid[TableOfCircles, Frame -> All]以下のデータは3種類の土壌と2種類のトウモロコシの種を表す:
agdata1 = {{clay, seedB, 175}, {silty, seedB, 180}, {clay, seedB, 165}, {sandy, seedA, 168}, {clay, seedA, 184}, {sandy, seedB, 171}, {sandy, seedB, 173}, {sandy, seedA, 189}, {clay, seedA, 186}, {silty, seedB, 174}, {clay, seedA, 192}, {clay, seedA, 184}, {clay, seedA, 179}, {sandy, seedA, 182}, {sandy, seedB, 177}, {silty, seedA, 180}, {clay, seedB, 175}, {silty, seedB, 181}, {sandy, seedA, 176}, {silty, seedB, 190}};FirstをGatherByと一緒に使って各データ点の第1要素でデータを集めることによって,土壌の種類ごとにデータをグループ分けすることができる:
GatherBy[agdata1, First]データを表形式で表示するために,レベル1でFlattenを使う.ここでは3つ1組の値のリストを1つ作成する.%の記号は,直前の出力を指定するもので,この場合はグループ化されたデータである:
agdata2 = Flatten[%, 1]Lengthを使って土壌の各種類について観測回数を数える:
Length /@ GatherBy[agdata1, First]Rangeを使って,1で始まり観測回数で終る,連続する整数のリストをそれぞれの土壌の種類について生成する:
Range[%]Flattenを使ってこれらの整数リストを単独のリストに圧縮し,行の見出しとして使用できるようにする:
rowHeadings1 = Flatten[%]土壌の種類,種の種類,収穫高データについて列の見出しを作成する.次の段階で観測番号について列の見出しを作成するので,ここではそれを行わなくてよい:
colHeadings1 = {"Soil Type", "Seed Type", "Yield"};ArrayFlattenを使って,観測番号を列の見出し"Observation #"とともにデータに加える:
agdata3 = ArrayFlatten[{{{{"Observation"}}, {colHeadings1}}, {List /@ rowHeadings1, agdata2}}]Gridを使ってデータを表で表示する:
Grid[agdata3]Gridで使用できるオプションをいくつか使って,表にスタイルを加える:
Grid[agdata3, ItemStyle -> {Automatic, {1 -> {Bold, 14}}}, Frame -> {All, 1 -> True}, Background -> {None, {{LightOrange, LightGray}}}]表をフォーマット化したりスタイル化したりすることについての詳細は,「表データをフォーマットする方法」および「格子,行,列」を参照のこと.
TableFormを使って表を作成し,表に見出しを加えることもできる.
d = {{5, 7}, {4, 2}, {10, 3}};rowHeadings2 = {"Group A", "Group B", "Group C"};
colHeadings2 = {"y1", "y2"};TableFormを使って表を作成し,TableHeadingsオプションを使って見出しを加える:
TableForm[d, TableHeadings -> {rowHeadings2, colHeadings2}]