最新記事の通知を受け取る

最新記事公開時にプッシュ通知します

統計ツール・HADを20年作り続けて。自作マクロが、700回“引用”されたフリーソフトになるまで【フォーカス】

2025年7月29日

統計分析用フリープログラム「HAD」開発者
関西学院大学 社会学部 教授

清水 裕士

社会心理学者。専門は社会心理学、グループ・ダイナミックス。大阪大学大学院博士課程に在籍していた2005年から、フリーの統計分析プログラム「HAD」の開発を始める。以来、約20年にわたり、本業の研究・教育活動と並行して開発と保守を継続。趣味は、研究。
X
HAD(個人サイト内)
researchmap

「統計分析ツール」といえば、何を思い浮かべるでしょうか。「SAS」(※1)や「SPSS」(※2)のような高機能な商用ソフトでしょうか。「R」や「Python」といったプログラミング言語で分析スクリプトを組むのもスタンダードかもしれません。

そんな中、主に心理学の領域で20年近くにわたり活用され、全国150以上の大学で導入されている「フリーソフト」が、「Microsoft Excel」向けのマクロ入りエクセルファイルとして配布されている統計分析プログラム「HAD」です。専門家でも一筋縄ではいかない、階層線形モデルや構造方程式モデルといった高度な分析手法までを、Excel上で手軽に実行できるようにしています。

HADの動作イメージ

VBAをフル活用してHADの開発を2005年に開始し、現在までメンテナンスを続けているのは、関西学院大学社会学部教授で社会心理学者(※3)の清水裕士さん。ソフト開発が「学術的な業績評価」と直結するわけでもない中、清水さんはなぜ複雑な統計ツールの開発を続けてきたのでしょうか?

もう開発らしい開発はほとんどしていませんし、『バグ報告がきたら直す』くらいです」と淡々と語る清水さん。約20年にわたる開発の歴史を通して見えてきたのは「ソフトを公開すること」にかける、ある種のアカデミック精神でした。

(※1)SAS:米SAS Institute社が開発・販売する統計解析ソフトウェア。製薬業界や金融機関など、大規模データの信頼性が求められる分野で広く利用されている。
(※2)SPSS:米IBM社が開発・販売する統計解析ソフトウェア。GUIは直感的で、社会科学や市場調査の分野で教育用・実務用として広く普及している。
(※3)社会心理学:心理学の学問分野のひとつ。人と人、あるいは人と社会の相互作用が、心理や行動にもたらす影響を研究する。

「研究でHADを使うのは禁止」?

――本日はよろしくお願いいたします。20年近く開発を続け、今や多くの大学で利用されているHADですが、このプログラムは清水さんにとってどのような存在なのでしょうか?

清水:これが不思議な感覚で、どこか「自分の手を離れつつある存在」のように感じています。

なにせ、現在は開発らしい開発をほとんどしていません。欲しいと思った機能は一通り実装しましたし、本業の研究が忙しいからです。

一方で、知らず知らずのうち、使ってくださる方は今も増えているようで、学会で初対面の方から「HADの清水さんですね?」と声をかけていただき、言われてから「あ、そんなものつくってたな」と思い出すことすらあります。

「ユーザーからたまにバグ報告が来たら、その都度修正する」くらいのメンテナンスは続けていますが。

――ご自身の研究でも、HADを使うことはないのでしょうか。

清水:ないですね。今の私の研究アプローチは、HADのカバー範囲にない手法が多いので。その上、私が指導している大学院生にはあえて「研究でHADを使うのは禁止」と伝えています。研究者を目指すなら、より汎用性が高く、現代のデータサイエンスの標準であるRやPythonをしっかり習得してほしいからです。

つまり今のHADには、どちらかというと、統計初学者の学部生や、高価なソフトを使えない人が、分析の難しさや金銭的な壁を越えて統計に親しむための「入り口」としての役割を期待しています。

――HADというツールのコンセプトは「統計学習の入り口」ということでしょうか。

清水:そうなれば良いな、とは思いますが。ただ私は「このツールはこうなるべきだ」という野望や明確なコンセプトを掲げて開発してきたわけではありません。

実のところ、HAD開発の原動力は極めて自分本位なもので、「自分が面白いと思えることしかしない」というスタンスを貫いてきました。「この機能がほしい」と頼まれても、自分が面白いと思えなければ実装しませんでしたし、「こうなれば完成」というゴールも設けていません。

気が向くままに、その時々で面白そうだと思った機能を追加してきた、というのがこの20年間の正直なところです。

▲HADは現在、OneDrive上で公開されている。ソースコードもVBAエディタから閲覧可能で、改変や再配布も許可されている

自分用マクロが「心理学部生の必携品」になるまで

――気が向くまま開発してきたとのことですが、そもそも何がきっかけでHADは生まれたのでしょうか。

清水:発端は2005年の修士課程時代、自分の研究を楽にするために書いたExcelマクロでした。

私は「恋愛関係」をテーマに研究していました。当時の社会心理学では、この手の研究において、人同士の関係性を正確に捉えるために、カップル双方からデータを取る「ペアデータ」の分析が重要視され始めていました。こうしたデータを分析するには、「マルチレベル分析」(※4)という少し特殊な手法が必要になります。しかし、学術機関で主流だったSPSSのような商用ソフトでは、この手法は簡単には実行できませんでした。

特に、分析前のデータの下準備が非常に煩雑で。本格的なマルチレベル分析を既存のソフトウェアで実行できるようにするためには、行列演算など手計算ではできない事前処理がいくつかありました。この下準備を自動化するために組んだマクロが、HADの原型です。

(※4)マルチレベル分析:カップルと、カップルを構成する個人のデータや、生徒個人とその生徒が所属するクラスのデータのように、階層構造(入れ子構造)を持つデータを分析する手法。個人の要因と集団の要因を考慮できる。

――そこから、多くの方が使うようになるまでの経緯を教えてください。

清水:大きな転機は、2つあります。

まずは博士課程修了後、オーストラリアのメルボルン大学に留学していた時のこと。当時の社会心理学界隈では、交互作用効果(※5)の分析が流行っていました。それには重回帰分析という手法を用いるのですが、これもまた既存ソフトでは非常に面倒な作業が必要で。

当時、時間に余裕があった私は思いつきで「これも自動化できないか」とHADに分析機能を実装してみたんです。これが研究者仲間で評判になり、「あの面倒な手順が数クリックで終わる」と、次々に使ってくれるようになりました。

自分が開発したもので、人が喜んでくれる。それで思い出したのは、中高生時代に「RPGツクール」でつくったゲームを友達に遊んでもらい、「面白いじゃん!」と言われた時の感覚でした。

他の人に使ってもらうのも、楽しいものだな」と。このころから、開発のモチベーションに「人のため」という視点が加わりました。

(※5)交互作用効果:2つ以上の要因が互いに影響し合い、単独の効果とは異なる結果を生み出す効果のこと。例えば、ある薬の効果が、性別によって異なる場合などを指す。

――「自分のため」だったのが、人に喜んでもらえるという「面白さ」も開発の原動力になった、と。

清水:ええ。

第2の転機は、助教として広島大学に赴任してからのことです。

今度は、指導していた大学院生から「HADで分散分析(※6)もできませんか?」との要望を受けました。それは、重回帰分析よりも、むしろ基礎的な手法でした。

(※6)分散分析:3つ以上のグループの平均値に、統計的に意味のある差があるかを調べるための手法。「A、B、Cという3種類の勉強法で、テストの平均点に違いはあるか?」といった検証に用いる。

――実装済みの機能よりも「基礎的」な手法を、後から追加することになった?

清水:そうなんです。

この順序のねじれは、当時の心理学界隈のツール事情に起因します。端的に言って、「統計分析ソフト」の選択肢が極端に少なかった。多くの商用ツールは、心理学よりも経済学に向けて最適化されていました。心理学の実験で頻繁に行う「単純主効果の検定(※7)」のような比較分析が、GUIのクリック操作だけでは完結しなかったり、複雑なプログラムは結局自分でコードを記述する必要があったりと。一方、心理学に適したソフトにはSASというのもありましたが、こちらはとても高価で、導入しない大学も多かった。

つまりプログラミングに不慣れな多くの学生や研究者にとって、心理学の統計分析には非常に高いハードルがあったのですね。

(※7)単純主効果の検定:分散分析において、複数の要因が結果に影響を与えている場合(交互作用がある場合)に、特定の条件下での要因の効果をさらに詳しく調べるための検定手法。

――基礎的か高度な分析かを問わず、そもそも「誰でも手軽に統計分析ができる」という状況からはほど遠かった?

清水:そこで院生の声に応える形で分散分析の実装に挑戦したのですが、やってみると本当に大変で。極めて条件分岐が多く、重回帰分析とはまた違った難しさがありました。計算の前提となる「誤差項」ひとつを取っても、実験計画の種類によって扱い方は全く異なります。どの効果をどの誤差項で割るべきか、どの水準で多重比較を行うべきか。商用ソフトならそうした判断は自動でやってくれるのですが、そのロジックを自分でHADに落とし込む必要がありました。

「自分はソフトの出力結果を解釈できても、その仕組みやアルゴリズムは全く理解していなかったな」と痛感すると同時に「HADの開発自体が、統計学の深い勉強になる!」という新たなモチベーションが生まれました。この頃から、t検定(※8)やカイ二乗検定(※9)など、HADの機能は急激に増えていきました。

(※8)t検定:2つのグループの平均値に統計的に意味のある差があるかどうかを調べるための、最も基本的な検定手法の一つ。
(※9)カイ二乗検定:観測されたデータが、期待される理論的な分布とどの程度異なっているかを調べる検定手法。アンケート結果の関連性を分析する場合などに用いられる。

――「自身の学びとしての面白さ」も開発の動機に加わったのですね。

清水:そうして口コミによって、大学の内外でHADを使う学生や院生の数が増えていくにつれ、「HADには、初心者が統計に親しむための『入り口』としての役割もあるんだな」と、教育ツールとしての意義も感じるようになりました。

すると今度は、機能面の不足が気になり始めたんですね。t検定や分散分析を経て、学生がより高度な分析をしようとした時に「ここからはHADではできないから、別のソフトで」と促すのが、開発者として単純に悔しくて(笑)。

「できる限り、心理学で用いる分析手法をカバーできるものを作ろう」と決め、最終的には、開発の原点である「マルチレベル分析」そのものを実行できる機能を実装したんですよ。

つまり「下ごしらえ」のためだけにつくったツールが、最終的に「本番」の分析までできるようになった。そんなことができるようになるとは当初は思ってもみませんでしたが、この帰着は、自分にとって非常に感慨深いものでした。

「論文を読むのにお金を取らないだろ?」

――一貫してプラットフォームにExcelを選んでいるのは、やはり「誰でも手軽に使えるから」でしょうか。

清水:そうですね。これはHADの開発前、院生時代に知り合った研究者に影響を受けています。

その方は「学校教育効果の定量的な測定手法」が専門で、Excelで動く統計プログラムをネット上で公開していました。ある日私は、この方に「『R』の方が、高度な分析がしやすいのでは?」と尋ねたんですよ。返事は

「私のプログラムは、中学や高校の先生にも役立ててほしい。でも、皆がRを使えるわけじゃないでしょ?

というものでした。

それが非常に印象的で「確かに、統計の専門家でない人にとって最も身近な統計プラットフォームはExcelだよな」と納得したのです。

なので、Rの使用や、C言語による実行ソフトの開発を考えたこともありましたが、こうした背景もあって、私以外もHADを使うようになって以降も、一貫してExcelを選んできました。

スプレッドシートベースというのも良い点なんですよ。初学者にとって、RやPythonだと、データはコードの向こう側にある抽象的な存在で「直にデータに触っている感覚が薄くて慣れない」という悩みをたびたび聞きます。一方、Excelなら、弾き出したデータは常に「セル」のなかに表示され、目の前に現れますから。

――HADに定まったコンセプトはないとのことですが、「統計分析の入り口的存在であってほしい」という思い自体は、実は長らく存在していたのでしょうか?

清水:意識は、していましたね。それは、HADのインターフェースにも表れているかと思います。初学者でも迷いづらい、「統計の『目的』から選べるUI」です

一般的な統計ソフトでは、例えば分散分析がしたくなったとして、まずはアルゴリズム名や分析種別といったメニューの奥深くにあるオプションをたどる必要があるなど、初学者にとっては何をするべきかがやや直感的でない場合があります。

HADの場合、モデリングシートを開くと、まず大別して「回帰分析」か「因子分析」かを選ぶことになります。回帰分析を選ぶと、続いて「回帰分析」「分散分析」「一般化線形モデル」「一般化線形混合モデル」の4つの選択肢が表示され、この時点でもう分散分析を選べます。

あとは表示項目にそのまま必要な情報を入力していけば、数クリックで結果を得られます。操作性は基本的に統一されているため、いちど使い方を覚えれば、他の高度な分析にも応用可能です。

――それほどつくり込まれたソフトを、無料で提供し続けるのは、なぜでしょうか?

清水:これも、他の方から影響を受けています。私の共同研究者で、学生時代からの先輩でもある小杉考司先生(専修大学教授)です。プログラミングがとても得意な方で、私もC言語を教えてもらうことがありました。

それで私が学部生だった時、院生だった小杉先生は、大変ニッチながら、非常に複雑な統計プログラムを自身のWebサイトにひっそりと掲載していて。

ある日、小杉先生に「なんでそんなに苦労して書いたプログラムを無料で公開しているんですか?」と聞いたら、

だって、他人が自分の論文を読むのに、お金を取らないだろ?

というようなことをおっしゃったんですよ。

――学術的な目的でプログラムを配布しているので、無償提供に抵抗はない、ということでしょうか。それを聞いて、どのように感じましたか?

清水:面食らいましたが「それ、かっこいいな」と思ってしまって。

多分、我ながら素直な子だったので、ソフトウェアという形においても知識の共有をいとわない、そのアカデミックな精神に痺れてしまったんですよね。

それ以来「つくったプログラムを『シレッと』ウェブページに掲載すること」に憧れていたんです。それも、HADを公開し、無料でメンテナンスし続けている背景です。

――無料でソフトを公開するスタンスへの、純粋な憧れがあったのですね。

清水:とはいえ、当然「すべてのソフトウェアや専門知識が無償で公開されるべきだ」とは思ってないです。特に例えば開発者自身の新たな発見や理論が核になっていたり、企業の個別具体的な問題解決を可能にするほど専門性が高い場合などには、金銭的な対価をもらえるべきだと考えます。

あくまで、HADの場合は学術的な目的かつ初学者向けのソフトとして位置づけていったので、無償公開を続けているという次第です。

――一方で、20年間その姿勢を貫き続けるというのは、並大抵のことではないと思います。無償で公開を続けるなか、例えば、ユーザーサポートに苦心することはないのでしょうか。

清水:もちろん大変です(笑)。特に、新学期や卒論シーズンは、学生さんから「動きません!」「使い方が分かりません!」といった問い合わせがたびたび続出します。

そこで、サポート対応には自分なりのルールを徹底しています。それは「謝らない」ということです。

無料である以上、本来サポートの義務はありませんし、バグ報告も「共同開発者からのデバッグ協力」くらいに捉えるようにしています。だから、報告には「ご指摘ありがとうございます」と感謝を伝えます。が、基本的には、謝罪はしない。また、HADに関する個人的な要望や使い方に関する質問にも多くの場合は応じず、あえて「塩対応」を貫く

そうでもしないと、こちらの精神衛生が保てず、開発自体を放棄することになりかねません。長く続けていくための、私なりのコツです。

▲試しに架空のデータを入力し、身長体重と「ポジティブ度」という変数の関係を調べてみる
▲回帰分析を選択し重回帰分析を行う
▲「偶然その結果になる確率を示す指標」であるp値がいずれも基準値の0.05を上回った。計算時間0.12秒で「このデータでは、身長や体重はポジティブ度に明確な影響を与えない」ということがわかった

共有した「知」は、めぐりめぐって返ってくる

――HADが、清水さんのキャリアに影響を与えた部分はありましたか?

清水:しばらくは、開発自体が研究者としての評価に直接結びつくことはありませんでした。ただ、ずっと無風だったわけでもありません。

転機は2016年。知り合いの研究者が「手法や方法論といった、研究を支える活動も評価されるべきだ」との思いで、そうした活動に関する論文を掲載する学術雑誌「メディア・情報・コミュニケーション研究」を立ち上げました。

幸運なことにその創刊号で私もお声がけいただき、HADの概要と、その利用法についてまとめた論文を寄稿させていただきました。その後、その論文はHADを使っていただいた他の研究者によって引用され続け、その数は、今では700件を超えました(Google Scholarによると、2025年7月28日時点で721件)。結果的に、私の書いた論文の中でもトップクラスの被引用数で、一応はそれが学術的な評価につながっている、という側面はあります。

――研究補助ツールとして生まれたHADの存在が、学術論文として「引用」されるようになったのですね。

清水:ただ、最大の恩恵は「HADを通して、私の存在を知ってもらえた」ことだと感じています。

「お会いしたことはないが、HADを使っていただいた方」から、知らず知らずのうち、信頼を寄せていただいているような感覚があるのです。学会で「あ、HADの! いつもお世話になっています」と声をかけていただくことも多く、共同研究のお願いや、新たな学術コミュニティへの参加がしやすくなりました。これは全く予想していなかった、嬉しい副産物でしたね。

だから、やはり自分の知識や技術は惜しまずに共有した方が良いのかもしれないなと、HADの開発を通して改めて思うようになりました。そうして生まれた好影響が、いつか自分に返ってくるのだと。

なので教え子には、「技術記事などの発信はどんどんした方がいいよ」といつも伝えています。

――最後に、HADの今後の展望についてお聞かせください。

清水:現在、特段の計画はありません。ただ、VBAという言語の将来性は未知数ですし「私がこの世を去ったら、このプログラムはどうなるんだろう?」という懸念は常にあります。いつか誰かに開発を引き継ぐ、ということはあるかもしれません。

なにせ心理学が嫌いになる大きな要因のひとつが「統計」です。この分野の人間として、HADという「入り口」を通して心理学を嫌いになる学生が減ってくれるとうれしい。そして、HADに触れた人が、いずれはRやPythonを使った、より本格的な研究に進んだらいいな、と。その「橋渡し」として、HADの分析結果から、R向けのコードを出力する機能もつけています。

結局どうなるかは分かりませんが、しばらくは報告のあったバグを修正しながら、静かにサイトにHADを置き続けるでしょう。そして、どんな形であれ、これからも学問を志す誰かの「つまずき」を減らす一助となれたら、開発者として、研究者として、この上なくうれしく思います。

取材・執筆・編集:田村 今人

関連記事

人気記事

  • コピーしました

RSS
RSS