川村渇真の「知性の泉」

役立つ情報を自動的に付加する一覧表機能


情報を整理して見せるもっとも簡単な方法が「一覧表」だ。しかし、単純に一覧表を表示させるだけでは、有効に活用できない。そこで、データ分析などに役立つ計算値を自動的に付加し、一覧表の利用価値を最大限に引き出してみよう。対象となる項目ごとに、必要な計算値の種類を自動で選ぶ点が大きな特徴だ。また、指定した評価条件でセルを色分け表示する機能もある。こうした機能があれば、一覧表が非常に活躍することになるだろう。


一覧表はもっとも多く使う表示方法
既存システムは柔軟性に欠ける

 一覧表は、複数のデータを並べて見るときに用いるものだ。並び順を変えながら、全体の傾向を見るとか、データを比較するとか、いろいろな用途で使っている人も多いだろう。関係するデータをとりあえず表示し、その中から良いデータを選ぶといった使い方もできる。一覧表は、複数のデータを一緒に見るときには、もっとも多く使う表示方法である。
 既存システムでつくられる一覧表は、いろいろなアプリケーションが個別に生成する(表1)。データベースならレコード一覧、プロジェクト管理ソフトならリソースやタスクなどの一覧、Finderならファイル一覧といった具合いだ。この中で、表計算ソフトが一番特殊で、汎用的な表の作成ソフトと見なすことができる。セルにデータを入れることで、どんな一覧表にでも仕上げられるからだ。

表1、OSの種類ごとに、一覧表の機能を比較した結果。情報中心システムでは、1つの機能で全部の一覧表を描く

               OSの進歩 =================>

表1

 さて、現在の場合だと表をどのような形式で描くかは、アプリケーションに依存する。ファイル一覧やタスク一覧では、書式が決まっていて、ユーザーが変更できる余地はかなり少ない。一方、データベースの一覧表示では、レイアウトをいくつも作成でき、ユーザーの自由度は高い。表計算ソフトも、簡単にセルを並べ替えられ、同様に自由度が高い。データベースと表計算ソフトだけは、いろいろなデータを扱うソフトなので、特別な存在といえる。ただし両ソフトとも、どのように描くかはユーザー自身が指定しなければならない。レイアウトを作成する、各セルに式や値や入力するなど、作成作業が伴う。
 また、扱うデータも、そのソフトが読めるファイルだけに限られる。別なアプリケーションでつくられたデータでは、別のソフトへ移動するとなるとかなり面倒である。最悪の場合には、手で入力しなければならない。データを広く使うための工夫は、ほとんど提供されていないのが現状だ。

対話型の機能を備える一覧表
他の表示と行き来して利用する

 情報中心システムにおける一覧表は、システムの基本機能として組み込まれている。いろいろなデータを整理して表示するための機能で、もっとも使用頻度が高い。
 システムの基本構造が既存システムと大きくちがうので、ユーザーの使い方もかなり異なってくる。アプリケーションを起動して書類を開くのではなく、見たいデータのタイプ(人物や製品など)を直接指定して作業を始める。関連するデータをいったん表示させ、それを見てから次の作業を決めることも多い。データのタイプと、選別のための抽出条件を指定して、該当するデータだけを表示させる。このときに用いられるのが一覧表だ。項目を追加したり、データの並び順を切り替える機能も用意し、より自由な見方を実現する。表示した件数が多いときは、条件を加えて何度か表示し直す。一覧表を見て、システムと対話しながら作業を進めるのが一般的だ。
 もっと上手に使うには、処理の流れ図(本連載の第20と21回で解説)を利用する。抽出条件を何段階かに分けて設定し、各段階での一覧表示を見れば、抽出条件の良し悪しも判断することができる。このような使い方も、対話の一種といえるだろう。
 一覧表以外の表示機能との連携も重要で、簡単に行き来できる仕組みを用意する。表の中の特定のデータを選び、その詳細を表示する画面を呼び出す。人物データなどで、表に含んでない項目を見るときに役立つ。
 データ抽出の表示以外でも、処理の把握データ、項目や処理の選択、データ復帰のログなど、一覧表を用いる機能は多い。システム内部的に見ると、一覧表は、何件ものデータを一緒に表示する表現方法の1つである。汎用性が高い表現方法なので、いろいろな機能から利用されるわけだ。

「データを整理するときの基本は、まず一覧できること 
      システムに統一的な一覧機能があればいい」

全データが対象となる一覧表機能では
画像データも一緒に表示できる

 以上のような仕組みのため、基本的に全部のデータが一覧表の対象となる。数値や日付だけでなく、長い文章テキスト、静止画、動画などだ。音は画面表示が不可能なので、音データの存在を示すアイコンを表示する。階層構造などの特殊データも、タイプを伝えるマークの表示でデータの存在を示す。
 一覧表の中に画像データを含める場合、1行分の高さをテキストに合わせると、画像が小さすぎて見づらい。それを防止するには、少し工夫が必要だ。2行または3行分を1グループとして、画像を横に並べる表現方法を採用する(図1)。横長の画像が多いなら2行分を、縦長の画像が多いなら3行分を用いる。各画像がどの行に属しているのかを識別できるように、画像の上下に狭い空白部分を残す。この部分は、表示内容を自動生成するAuto Expression機能が担当し、表現ルールを追加して拡張する。もっと凝った表示方法は、新しい表現ルールの追加で可能だ。

図1、一覧表の中に画像を含めるときは、2〜3行分をまとめて横に並べる。各行との関連性を示すために、画像の挿入枠を少しずつ上下にずらす

図1

 画像や音も表示できると、一覧表を利用する機会も多くなる。画像が中心のデータであっても、まず最初に対象データを一覧表で表示し、傾向をつかんでから次の処理を考える。データの種類に関係なく、同じ手順で作業が進められることになり、全体的な使い心地は非常によくなる。

「動画、音、テキスト、その他もろもろを       
  一覧表にまとめれば、おもしろい傾向がつかめる?」

平均や合計などの計算値を
自動的に加えて表示する

 情報中心システムにおける一覧表の特徴は、どんなデータも対象とするだけではない。いろいろな計算値を自動的に加える機能こそ、もっとも魅力的な部分だ。
 一覧表として表示したデータでは、全体の傾向を詳しく見たいことが多い。各項目ごとに、合計値や平均値といった参考になる値を知ることで、より的確に値を評価できる。これらの値を自動的に加える機能を、システム側で用意する(図2)。

図2、計算値を自動的に追加した一覧表の画面イメージで、下側に計算値を追加する。どんな値を加えるかは、知識ベース内の項目定義によって決まる

図2

 ここで重要なのは、どの項目にどの計算値を追加するかだ。項目のタイプが分かっているので、加えたい計算値は限定できる。たとえば人物データの身長なら、平均値を使うことは十分に考えられるが、合計値を使うことはまずないだろう。逆に、体重なら平均値も合計値も考えられる。合計体重は、たとえば乗り物に全員が乗り込むときの総重量を調べる目的で使えるからだ。項目ごとに必要な計算値が決まるので、知識ベース内の項目定義を利用する。各項目ごとの定義内容として、一覧表に付加すべき計算値を設定する。それを参照して一覧表を生成すれば、平均値や合計値が自動的に付加できる。
 項目定義を設定しようとする場合、設定がしやすく、拡張性が高いことが必要だ。合計や平均のように一般的な計算値は、単純になにかを選ぶだけで設定できるような機能を用意する。他の値は、中央値、最大値、最小値、上位の値の比率、標準偏差などが考えられる。また、拡張性の高さを実現するには、計算式を定義する方法が良い。いくつかの関数を用意して、四則演算と組み合わせる。たとえば、値の範囲を表示したいのであれば「最大値−最小値」という式を定義する。関数をある程度充実させることで、求められる計算値の種類はかなり増えるはずだ。

付加する計算値は
使用頻度で3段階にレベル分け

 ただし、これについては使用頻度で3段階程度にレベル分けする。3段階の頻度なら次のようにする。ほとんどのケースで表示する「多」、比較的よく使われる「並」、たまに使う「少」といった具合いにだ。ユーザーの選んだレベルに合わせて、該当する計算値を付加する。「多」〜「少」のすべて、「多」と「並」、「多」のみ、何も表示しないという4段階から選択できる。
 どのレベルまで表示するのかを毎回指定するのは面倒なので、作業ステージごとに設定して手間を省く。通常は「並」までを表示する設定で、分析が中心となる作業ステージだけに「少」までを設定する。
 これらの付加データは、必要なときだけ見ればよいので、使わないときは無視する。そのため、項目定義で設定する際には、それほど神経質になる必要はない。といっても、システムに標準でついてくる項目に関しては、最初から設定してあるので、ユーザーが設定する機会は少ない。自分で定義した独自項目に設定するだけだ。
 ただ、当然のことながら、自動的に追加する計算値だけでは、すべての要望を満足させられない。後から手動で変更する機能も必要だ。手動変更には、2段階の方法を用意する。最初の方法は簡単に使えるもので、その場でレベルを変更する方法だ。「少」まで表示するレベルに切り替えれば、たいていの用途で役立つ計算値を表示できる。それでも必要な計算値がないときには、もう1つの方法を利用する。計算値の種類をユーザーが直接選ぶ方法だ。どの項目のどんな計算値を表示したいのか、専用の選択画面を呼び出して設定する(図3)。項目名と計算値を軸にした2次元の表として表示し、クリックするだけで選べるようにする。

図3、一覧表に加える計算値の設定の画面例。オンオフだけなら○印だが、数値指定が必要なら数字を表示する

図3

 一覧表の場合、件数も重要な項目となる。全体の件数だけでなく、項目ごとの件数も表示する。特定の項目だけがないデータもあり得るからだ。件数の表示は、平均や合計の近くにあったほうが見やすいだろう。

「計算値や使用頻度も設定し、自動化させてしまえば 
     誰でもあっというまに一覧表のできあがり」

条件に適合したセルを目立たせ
データ分析に役立てる

 もう1つ、別な付加機能も持たせる。項目値の評価条件を指定し、それを満たしたセルだけを目立つように表示する機能だ。目立たせる1つの方法として、セル内を薄い色で塗りつぶす方法を採用する。指定する条件としては、値の大きさで上位10%を目立たせるとか、平均より上の値など、いろいろなやり方が考えられる。表全体を見渡し、データの並び順を変更しながら、目立つセルの分布を調べる。難しい統計学の知識がない人でも、データの傾向をつかむことが可能だ。こうなると、広い意味での分析に役立てられる。
 さらに発展させ、目立たせ方を何段階かに分ける方法も用意する。たとえば、3段階で目立たせるなら、上位5%を緑、上位20%を黄緑、上位50%を黄色で表示する。これは上位ほど強く目立たせる方法だ。
 設定する条件は、よく使われるものを最初から用意する(図4)。上位または下位何%、基準値より上または下、ベストまたはワースト何位まで、などが考えられる。それ以外は条件式を入力させることで、拡張性を確保する。条件式ではセル内の値を参照し、式の結果が真になるセルだけ目立たせる仕組みだ。

図4、特定の条件でセルを強調する設定の画面例。目的別に条件と強調方法を登録し、項目ごとに登録内容を設定する

図4

 目立たせ方を自動で設定する方法は、やはり項目定義での設定だ。しかし、どのように目立たせるかは、ユーザーの細かな使用目的に大きく依存し、多くの人に共通する設定にはなりにくい。学業やスポーツの成績など、ごく一部の項目でしか設定しない。その代わりに、手動での設定機能を簡単にする。一度設定した目立たせ方を登録し、あとから素早く呼び出せる仕組みを持たせる。また、処理把握機能を利用して、現在の表示内容を登録することも、無駄な再設定の防止に役立つ。

項目定義との連携を利用すれば
さまざまな自動化を達成できる

 一覧表のように利用頻度の高い機能は、改良する価値が大きい。また、既存OSとちがって、一覧表の機能はシステムで1つだけなので、改良したメリットをシステム全体で得られる点も魅力だ。途中に小計を挿入するとか、もっと別な機能追加も考えられる。このような機能を組み込むことで、一覧表の用途はさらに広がるわけだ。
 今回示した一覧表の機能向上は、情報中心システムの可能性の1つを紹介したに過ぎない。ここで注目すべきなのは、項目ごとに別々の設定を持つことで、いろいろな自動化を達成できる点だ。世の中のある程度の作業は、項目の種類ごとに処理が決まる。それに関しては、項目定義を利用することで自動化させることが可能だ。
 項目定義だけで一意的に決まらない場合には、いくつかのレベル分けを用い、作業ステージと併用する。レベル分けの代わりに種類分けでも構わない。ユーザーが作業ステージごとに設定をすることで、より柔軟な自動化を達成する。また、自動化が完璧でなくても大丈夫だ。ほとんどのケースで適切であれば、残りのケースで手動操作を求める。それだけでも、ユーザーの手間を大きく減らせる。
 以上のように、情報中心システムの基本構造は、高度な自動化を実現しやすくできているのが特徴だ。今後のシステムでは、高度な機能を簡単に拡張できることも求められる。当然のことだが、ここでいう「高度な機能」というのは、コンピュータ上の機能ではなく、情報を扱う作業での機能のことを意味している。


下の飾り