John Harte [ハート] (2001 / 蛯名 邦禎、冨塚 明 監訳 2020) 環境問題の数理科学 発展編 [原題 Consider a Cylindrical Cow]

  • John Harte, 2001: Consider a Cylindrical Cow: More Adventures in Environmental Problem Solving. University Science Books.
  • J. ハート 著, 蛯名 邦禎 [くによし]、冨塚 明 監訳、粟屋 かよ子、矢吹 哲夫 訳, 2020: 環境問題の数理科学 発展編。丸善出版, 233 pp. ISBN 978-4-621-30568-3.

2001年に英語版で出た本の日本語訳が2020年11月に出た。Consider a Spherical Cow (略記号[COW-1」、日本語版は『環境問題の数理科学入門』) の続編「COW-2」である。環境問題に出てくる自然科学的な数量の変化のしくみを、単純化したモデルによって考えようという教科書だ。COW-1の英語版の題名「牛の形は球であると仮定しよう」はアメリカで冗談としてよく聞かれることばだが、COW-2は球を円柱に変えた。こちらは初耳だと思うが、モデルをちょっとだけ複雑化したということなのだ。実際に動物の形を円柱で近似した例も出てくる。

どんな本かについては、COW-1とあわせて[読書ノート]に書いたので、そちらを見てほしい。

COW-2は5章にわかれ、それぞれの基礎知識のあとに5つの課題がある。

第5章の課題4, 5は、英語版のものから改訂されている。そのうち課題4は、訳者がまちがいに気づいて著者に書きなおしてもらったのだそうだ。

COW-1の日本語版には、ちょっと特殊な用語づかいがある。「率」ということばは、英語の rate に対応させ、単位時間あたりの量 (変化量または流れの量) をさす、というすじをとおしているのだ。COW-2 の日本語版も、ことわりがきは見あたらないが、同じ方針をとっているようだ。あたらしい種類の「率」がでてくるところには英語表現もそえられて rate であることがわかるので、まぎらわしくはないと思う。もちろん「効率」などの熟語のうちの「率」はこの意味ではない。

COW-2日本語版のくわしい目次をこのあとにつける。「課題」の表題が文学的につけられていてかならずしも内容の要約になっていないが、ひとまずそのままにしておく。付録の項目をあげたら行数が多くなったが、付録の内容は簡単なものである。
Continue reading

サム・キーン[Kean] 著 (2017 / 寒川 均 訳 2020) 空気と人類 [原題 Caesar’s Last Breath]

  • Sam Kean, 2017: Caesar’s Last Breath — Decoding the Secrets of the Air Around Us. New York: Little, Brown, and Company.
  • サム・キーン 著, 寒川 均 [さんがわ ひとし] 訳, 2020: 空気と人類 — いかにして 〈気体〉を発見し、手なずけてきたか。白揚社, 459 pp. ISBN 978-4-8269-0224-3.

日本語版は2020年12月の新刊。原書はアメリカで2017年に出ている。

著者は、本書の著者紹介によれば「サイエンスライター」であり、他の著書はあげられているが、専門などの説明はない。訳者については「翻訳家」とあるだけだ。「翻訳協力」として、西尾義人、伊藤ななえ、上原直子の3人の名まえが分担箇所つきであげられている。流通している本の情報を検索してみると、寒川氏の訳書はこれ以外にみあたらないが、西尾氏、上原氏は、それぞれ訳者となった本があり、そのうちには白揚社から出たものもある。

本書は空気やそのほかの気体を主題とした科学読みものだ。化学がおもで、気象学の話題はこの主題にしてはすくなめだ。話題が、たとえば46億年の地球の歴史と西暦1980年のセントヘレンズ火山噴火のあいだで行き来するので、はじめて知る読者は時間スケールがちがう話題を混同しやすいと思う。化学や地学の初歩をすでにまなんだ人にすすめたい。

しっかり読んだわけではないが、何が話題になっているかのメモをとった。「ネタバレ」になるかもしれないが、書きだしておく。わたしが関心のある話題にかぎってくわしくなっている。

はじめに — 最後の息。空気は分子からなる。ユリウス カエサル (ジュリアス シーザー) がはいた分子をあなたが吸っていることもあるだろう (英語版の題名はこの話題から)。

第1章 初期地球の大気。原始大気(「大気1」)がなくなったあと脱ガスによる大気(「大気2」)ができた。
セントへレンズ火山のそばに住んでいた人(専門家ではない)の話題を例として、火山のこと。

幕間 爆発する湖。カメルーンのニオス湖。地球内部から出てくる気体がおもに二酸化炭素である、現在の地球では特殊な例。そして災害になった例。

第2章 大気のなかの悪魔。窒素。ハーバーとボッシュによる窒素固定技術。それからハーバーが従事した毒ガスのこと。

幕間 危険な武器を溶接する。「酸素切断」。酸素で鉄を酸化させる技術と、熱で鉄を融解させる技術がある。

第3章 酸素の呪いと祝福。人が酸素を認識するまでの科学史。ファン・ヘルモント、ボイル、ブラック、D. ラザフォード、H. キャベンディッシュ、シェーレ、プリーストリー、ラヴォアジエ。
地球大気に酸素(O2)がある原因。シアノバクテリアによる光合成。それ以来の生物の進化と酸素濃度の変遷。

幕間 ディケンズより熱く。酸素を吸い二酸化炭素をはくヒトの体内でおきていることは燃焼なのか、という問題。

第4章 喜びガスの不思議な効能。麻酔につかわれた気体: 一酸化二窒素、エーテル(ジエチルエーテル)、クロロホルム。

幕間 フランスの「放屁狂」。ヒトの屁(おなら)のこと。

第5章 飼い慣らされた混沌。気体の圧力のこと。空気圧とマグデブルクのゲーリケ、水蒸気圧とジェームズ・ワット。爆発物、とくにニトログリセリンとソブレロ、ノーベル。

幕間 悲劇に備える。鉄の精練。どうやって鋼鉄にするか。とくにベッセマー。適度に炭素をふくむ鉄をつくるため、適度に空気をふきこむ。

第6章 空に向かって。大気中に行く。モンゴルフィエの熱気球と、シャルルの水素気球。ゲイ=リュサックと理想気体の法則。ストラット(レイリー)とラムゼーによるアルゴンの発見。太陽光スペクトルでさきにわかったヘリウムもラムゼーが地上で同定した。レイリーは空気分子が光を散乱することを理論計算でしめした。

幕間 夜の光。照明。石炭ガスやアセチレンの燃焼による光。ナトリウム蒸気やネオンを電気で励起することによってつくる光。

第7章 放射性降下物の副産物。原子爆弾と水素爆弾。放射性同位体、たとえばストロンチウム90、ヨウ素131をふくむ降下物が環境中にあらわれ、ときには健康被害をもたらした。自然にも存在する放射性同位体: カリウム40、ラドン、炭素14。

1954年3月1日のビキニ環礁での核実験が、戦争での意図的殺傷以外で人に被害をもたらした代表例とされている。そんなことがおきた事情についての論評として、「気象前線」という用語は不適切だが (「気象前線」という熟語はないし、ビキニ環礁のある熱帯では気象学用語でいう「前線」は生じない)、1954年当時、気象の知識が(いまからみれば)乏しく、放射性降下物がどう動くかについて無頓着だったのだろう、という推測はもっともだ。ただし、アメリカ合衆国は1956年ごろからマーシャル諸島で実験的な気象観測をやっていて、あきらかに核実験関連である。それが核実験による意図しない被害をへらしたかどうかをわたしは知らないが、気象データは公開されて、1960-70年代の熱帯の気象に関する知識の進歩にやくだった。

幕間 アインシュタインと庶民の冷蔵庫。冷蔵庫の原理は熱ポンプで、ふつうはモーターで熱媒体を圧縮する。ドイツにいたころ、アインシュタインとシラードは、モーターの必要がない吸収式の(複数の流体が低温で混合し高温で分離することによる)冷蔵庫を発明した。それは普及しなかったが、特許からいくらかの収入をもたらした。(著者は、アインシュタインが原子爆弾の提案者になった背景として、この件でシラードを信頼していたことがあると考えている。)

第8章 気象戦争。人工降雨。とくに第2次大戦直後のGeneral Electric社での研究。1960年代のアメリカの基礎科学としてのStormfuryプロジェクトと、ベトナム戦争がらみの空軍の作戦行動。
「気象制御の望みは色あせた」と言って、話題は天気予報にうつる。さかのぼってリチャードソン、フォン・ノイマン。そしてローレンツがカオスに出あったこと。(それにもかかわらず数値天気予報がそれなりに成功している話は、本書にはない。)

幕間 ロズウェルからの轟音
1947年のニューメキシコ州ロズウェルに落ちていたもの。宇宙人さわぎになったが、軍は「気象観測用の気球」だと説明した。人工の気球にはちがいなかったが、ソ連の核実験を探知するために音波を観測する気球をアメリカ軍があげたのだった。レーダーの電波を反射するための金属の部品もついていた。(著者は「気象観測用の気球」だというのは うそ だったという。わたしにいわせれば、音波の観測も気象観測にはちがいない。)

第9章 異星の空気をまとう
他の惑星にはどんな大気があるか。火星、金星。太陽系外の惑星の大気についてはどんなことがいえるか。光の吸収スペクトルから分子の種類がわかる。生命の証拠がわかるか?
惑星の温度条件はどのようにきまるか。温室効果。地球のばあい、温室効果の原因物質は第一に水蒸気、第二に二酸化炭素。そして、地球温暖化の話になる。

著者は「地球の大気を段階を追って慎重に冷やしていく、「気候工学」こそが唯一の現実的な方法だと感じている。」そして「地球工学の手法の一つに、大気中の二酸化炭素を回収し、固体炭素に変換するというものがある。」(「地球工学」と「気候工学」は同意語のつもりらしい。「固体炭素」は炭を想定しているわけではなさそうで、ドライアイスのことでもなく、「石灰」(炭酸カルシウム)などである。) 「地球工学への別のアプローチとして、太陽光が地表に届いて熱に変換される前に遮断するやり方もある。」そのうちで、鏡や、雲をつくる方法ものべたあと、おもに「二酸化硫黄をばらまく」ことをのべる。「二酸化硫黄には太陽光を宇宙へ跳ね返す性質がある。」というのは単純化しすぎだ。化学反応によって硫酸(または硫酸塩)の液体(または固体)粒子になることをのべないといけない。

著者はさらに「しかし、仮に地球工学が失敗に終わり… 別の惑星でやり直すことだ。」という。火星へ。太陽系外惑星へ。そのとき人は呼吸するための空気をどうやって得るのか、といった話になる。1960-70年代のアシモフがノンフィクションのエッセイでやっていた「空想科学」と同様な話で、娯楽としてはおもしろい。しかし、本の最後にあるからといって、地球環境問題への科学的知識をもつ人の提言としてうけとめるべきではない。

本書の章のうちの節のくぎりは「* * *」で、節見出しはない。したがって、目次の書きぬきはすでにしめした章と「幕間」の題名でつきている。

前野 昌弘 (2013) よくわかる初等力学

  • 前野 昌弘, 2013: よくわかる初等力学。東京図書, 403 pp. ISBN 978-4-489-02149-7. サポートウェブページ http://irobutsu.a.la9.jp/mybook/ykwkrMC/ 。

本書は (わたしは2019年12月に店頭で見て買ったのだが) 2013年に出た本だ。同じ著者、出版社から「よくわかる」のついた電磁気学、解析力学、量子力学、熱力学と、「ヴィジュアルガイド 物理数学」が2冊出ている。著者は琉球大学理学部の教員で、大学教員としてのウェブサイト http://www.phys.u-ryukyu.ac.jp/~maeno/ と個人ウェブサイト http://irobutsu.a.la9.jp/ がある。「いろもの物理学者」を自称し、本書奥付の上の著者紹介にもミドルネームのように書かれている。個人ウェブサイトにはSF関係の記事もあるが、あたらしい記事は物理の教材が多い。

わたしは地学の授業をしていて、天体の運動などについて教材をさがしているとき、前野さんのウェブサイトの「動く教科書」http://irobutsu.a.la9.jp/movingtext/ に気がついた。単なるアニメーションではなく、読者が指示することによって画面上の図形がうごくもので、パラメーター (変わりうるが各回の実行では定数とされる数値)を変えることができるようにつくられているものが多い。読者側はウェブブラウザでよいのだが、ブラウザ上で動画を実現する技術に変遷がある。古いものは、 Flash や Java applet がつかわれているが、新しいものは HTML5 をつかっている。(わたしはこのあたりの技術がよくわからず、これまで操作してみなかったが、HTML5 のものはつかってみようと思っている。)

【わたしは地学、とくに気象学をおしえる際に、基礎として力学を必要とするが、力学を自分でおしえることはこれまでなかった。(わたしが授業を担当してきた大学は、物理の教員が別にいるところだったからだ。)

わたし自身が学生のときは、大学の教養課程の力学は理解できたつもりだが教材が印象にのこっておらず、理学部物理学科の授業は、地球物理コースの必修になっていたぶんの単位はもらったものの実質的に学習できていたか疑問だった。大学院で気象学を勉強する際に必要な範囲で力学も勉強したが、体系的でなかった。

大学初級の力学をおしえるたちばになる可能性がでてきたが、そうすると勉強しなおさないといけない。多数の教科書を読みくらべる時間はとれそうもない(わたしの時間のうちでの優先順位を高くできない)。よさそうだと見当をつけたものを見ることにした。

物理の理解がしっかりしていて、初歩の人が誤解しやすいところをじっくり説明しているものがほしいので、まず、「動く教科書」で知っていた前野さんの著書を見ることにした。ほかとくらべたわけではないが、本書はこの期待にこたえてくれる本だと思う。

90分15回の授業であつかおうとすると、本書の内容は講義しきれない。教員の判断で要点を講義し、あとは学生の自習の材料にするのならばよさそうだ。ただし、要点とすべきことがらは、章の題名になっていることがらや、ページ配分が多いことがらだけではないので、講義予定をつくるまでによく見ておく必要がありそうだ。】

本書は全11章と付録からなっている。

付録には、道具となる数学的概念 (微分積分、ベクトル、座標系)と、物理量の次元と単位についてのことが書かれている。

「はじめに」のなかで、章を順に読まなくてもよく、いろいろな順序がありうる、と言っている。ただし、順序をかえたばあい、まだ説明を読んでいない用語が出てくることはある。

最初の3章は静力学にかけている。わたしは、静力学は運動方程式で速度がゼロになる特殊なばあいとして、はじめから運動方程式をだせばよいと考えていたのだが、それとはちがう。しかし、わたしの専門分野でも、近似的に力がつりあっているとすることが多いから、静力学に重点をおくのはよいことだろう。

力のつりあいを、第1章では1次元、第2章では2次元・3次元で考える。
第1章のうちでは、「作用・反作用の法則」について、力のつりあいとはちがった概念であること、用語の意味にとらわれると誤解すること(まず作用があってそれから反作用が生じるという関係ではない)などを注意している。
また、日常には意識しないがつりあいを構成するものとしては必要な「垂直抗力」や「糸の張力」を、どのように想定したかを説明してつかい、原因にいくらかふみこんだ説明もくわえている。

第3章も静力学だが、剛体を想定し、もし動くならば並進とかさなって回転もおこるような状況で、回転をおこさせようとする「力のモーメント」が主題となる。てこの原理もあつかう。
この章の最後に「面に働く力」についてのべ、「圧力」ということばもだしている。(「法線応力」と「接線応力」が、「面に働く力」の見出しよりも前に出てくる。これは「面に働く力」のうちにまとめたほうがよいと思う。)

第4章からが動力学だ。
第4章は1次元、第5章は2次元・3次元での運動方程式とその解としてえられる運動の例。
第6章は運動量、第7章は力学的エネルギー、第8章は角運動量のそれぞれ保存則。(角運動量はわたしがよく理解しないままきてしまった概念なので –だから気象学の理論家になれなかったのだが–。勉強になりそうだ。)
第9章は振動(単振動、強制振動、減衰振動)。具体例としてはおもに ばねふりこ をあつかい、ふつうの ふりこ は ふれの角 θ がちいさいとき、sin θ ~ θ という線形近似で単振動になる、と ことわっている。ただしこの論点を強調してはいない。

第10章は相対運動。座標系が等速直線運動するばあいの「ガリレイ変換」と、座標系が回転するばあいにでてくる「遠心力」と「コリオリ 力」が出てくる。「コリオリ 力」は 3次元のベクトルの形でしめされ、円筒座標での成分が説明されている。(気象学でつかう球座標の形にいたるにはもうひとつ処理が必要で、わたしにはとっさにはできないのだが、本書の演習問題などで頭をならせばできそうだ。)

第11章は、重力 (万有引力) を前提として、太陽のまわりの天体の運動の軌道が楕円や放物線になることや、ケプラーの「面積速度一定」などをみちびく。(わたしはこれまで、地学の授業で、楕円軌道は知識としてふれるけれども、数値を入れた計算の例は円軌道の近似でしかできなかった。力学をどこまでやれば楕円軌道を計算できるのかわかったのがありがたい。)

折りかえしのあとに くわしい目次をつける。
Continue reading

村上 陽一郎 (1979) 新しい科学論

  • 村上 陽一郎, 1979: 新しい科学論 — 「事実」は理論をたおせるか (ブルーバックス B373)。講談社, 202 pp.

1979年1月に出た本。大学3年生だったわたしはすぐ買ってひととおり読み、しまいこんだ。【そこまでの事情はあとで書く。】 2020年には、村上さんの名まえが、ひとつには1983年に中世西洋のペスト(黒死病)についての本を書いた人として、それから2020年10月に学術会議会員任命の問題についてネット上に評論を書いた人として、話題になっていた。それでこの本のことを思いだして、家の「ブルーバックスの棚」から持ちだしてきた。2020年12月になって、ブルーバックスから、副題に「新しい科学論」ということばがふくまれた本が出た【佐倉 統 『科学とはなにか[読書メモ (2021-01-12)]】。講談社によるネット上の宣伝には「ブルーバックスでは41年ぶりの科学論」というような表現もあった。こうなると、わたしは、新しい本を読むまえに、41年まえの本を読みかえさなければならない。

著者の専門は科学史・科学哲学にわたり、本書を書いたころは、西洋の近代科学のはじまりのころについての科学史の専門家として知られていた。しかし本書はどちらかというと科学哲学の本だ。著者は本書よりあと、科学技術と社会の関係にふみこみ、2000年ごろ以後はどちらかというと科学技術社会論の人として活動していた。しかし本書は、動機として「公害」や「資源有限論」など社会のがわから科学のありかたに反省をせまる材料があることをのべてはいるが、本論はアカデミックな科学哲学・科学史で、科学と社会の相互作用を具体的に論じてはいない。

副題の「「事実」は理論をたおせるか」に直接関係する論点をわたしなりに説明しなおす。20世紀前半にでき、1970年代ごろ「科学に関する常識的な考え方」になっていたものに対して、1970年代ごろ新しかった科学に関する考えかたを対置したのだ。

20世紀前半の「常識的な考え方」はさらにふたつに分けられる。ひとつは、事実に関するデータが蓄積し、そこから法則性が知られることによって、科学は進歩する、というものだ。しかし、それは論理学のたちばから批判される。科学の法則は、ある条件をみたすすべてのものになりたつ言明だ。個別事実についての言明をつみあげる帰納によっては、法則を実証することはできない。第2の考えかたは、科学者が法則の候補となる仮説をたてることを重視する。個別事実が、仮説から演繹される帰結とちがっていれば、仮説が反証される。法則は確定はしないけれども、正しくない法則の候補が排除されることによって、科学は進歩する。(これは、本書が出たのと同じころ、わたしが課外で、ポパー(Popper)の学説として勉強したことだ。本書にはわたしの気づいたかぎりでポパーの名まえは出てこないけれども、広い意味で同様な学説のひとつとしてふくまれていると思う。)

「新しい」科学観は、個別事実についての言明の確実性をうたがう。人が同じ画像のどこを「図」としどこを「地[じ]」として認識するかによって、別のものごとをよみとることができる画像がある。(この話題で村上さんは N. R. Hansonの著作を参照することが多くなったが、それは本書よりもあとのことだ。) そして、本書のおわりちかく(199ページ)で「共約不可能性」があるといい、本書での順序はそのまえ(197ページ)だが、Kuhn のいう「科学革命」に話をすすめる。この考えかたの提案者として、クーンとともに「クーンよりもこうした点では徹底した考え方をもつ」ファイアーアーベントの名まえをあげる。さらにかっこ書きで「わたくしは、この点でかなり彼らの主張には変更を加えなければならないと考えていますが、そこに立ち入るのは少し技術的に過ぎると思いますので、ここでは差し控えることにします。」と書いている。本書を見るかぎりでは、KuhnとFeyerabendと著者自身との考えにちがいがあることはわかるがその内容はわからない。なお、「共約不可能性」についてのわたしの理解は [別ブログ 2020-12-27の記事]に書いた。

本書のもうひとつの重要な論点。20世紀前半ごろにできて1970年ごろ「常識的」だった科学のとらえかたのうち、科学史に関する部分では、近代科学ははじめからキリスト教的世界観を否定するたちばに立っていたというものがあった。しかし、ガリレオのころからニュートンのころの、いまから見れば科学者と言える人たち(当時の表現では「自然哲学者」)の著作をたどると、彼らの科学理論は、キリスト教の信仰とささえあっている。(また、古代ギリシャ以来の神秘思想がつづいているところもある。) 近代科学を宗教と切り離そうとする変化はたしかにあったのだが、それは18世紀ごろのことなのだ。著者はそれを、科学にかぎらず西洋社会に17世紀から18世紀におこった「聖俗革命」というべき変化の一環としてとらえる。

このふたつの論点がどうつながっているのかは、読者としてはよくわからない。しかし、著者はキリスト教の信仰をもちつづけている人だと聞いているので、科学の学説選択の基準は「なんでもあり」ではなく、先近代にもどるわけでもないが、かつては宗教がカバーしていたような価値の領域の復活が必要という方向のような感じがする。

【さて、わたしは 1977年、大学2年の後期に村上助教授(当時)の講義を聞いたのだった。教養課程で科学史の科目があればとろうと思ったのだがその機会がなかった(理科系の学生むけに開講されていなかったか、時間がぜひとりたい科目とかさなっていたか)。理学部への進学がきまったあとの2年生後期に、理学部の科目で過密な時間割だったが(実際そのうちひとつを落としてしまって翌年に試験を受けることになったのだが)、たまたまあいているところに、科学史・科学哲学コース進学予定の人のための講義があったので、それにもぐりこんだ。「他学部聴講」(教養学部生が教養学部の科目をとるのだから形容矛盾なのだが)の手続きをしたと思う。講義は教科書をつかわず板書もすくなくて、正直なところよくわからなかった。

「共約不可能性」の話はなんとかわかった。その関連のどこかで、フォイアー、ファイアーアーベントともうひとりの学者の名まえが列挙されたことがあった。もうひとりがクーンだったか、クーンは別の文脈で出てきたかはおぼえていない。フォイアーは、いま調べてみると、村上さんほかの訳で1977年に出ている『アインシュタインと科学革命』の著者 Lewis S. Feuer にちがいない。

期末レポート課題が出て、どういう問題だったか忘れてしまったが、18世紀フランスの『百科全書』が話題になっていて、岩波文庫の抄訳本を手にとったもののそれを読みとおす時間もなくとほうにくれたのをおぼえている。(履修登録はしたもののレポートを出せなくて単位はとらなかった、と記憶しているのだが、もしかすると、へたなレポートを出してしまったかもしれない。)

そのあと本書が出て、聞きとれなかった話のいくつかは、こういうことだったかと理解できた。それでも『百科全書』とのつながりはわからなかった。いま思えば、科学の聖俗革命をおこした啓蒙主義の思想がどんなものかを考えさせたかったにちがいない。】

折りかえしのあとに くわしい目次をつける。
Continue reading

間瀬 茂 (2007) R プログラミングマニュアル (初版の読書メモ)

  • 間瀬 茂, 2007: R プログラミングマニュアル (新・数理/工学ライブラリ 情報工学 1)。数理工学社 (発売: サイエンス社), 335 pp. ISBN 978-4-901683-50-0. [わたしはこの版を読んでいる。]
  • 間瀬 茂, 2014: R プログラミングマニュアル 第2版 (R バージョン3 対応)。数理工学社 (発売: サイエンス社), 359 pp. ISBN 978-4-86481-015-9. [わたしはこの版はまだ見ていない。]

Rの技術書の「在庫整理」にもう1冊追加する。この本は2014年に第2版が出ているので、ひとにすすめるならばそれを読んで紹介するべきなのだが、わたしは、2007年に出た初版 (くわしくいうと、2008年3月に出た第2刷)を2009年に買って持っているので、第2版を買うかどうか考えるまえに初版をながめてみることにした。

著者は数学からはいった統計学者で、空間分布をもつ量の統計学を専門としている。(そちらの主題の著書もわたしの仕事と無関係ではないのだが、わたしはまだ手を出せずにいる。) 本書は、著者の専門性のほかに、とくに「Tips」に関して、岡田 昌史 さんが運営している RjpWiki というサイトにあつまったおおぜいの人びとの知恵を反映している。

本書は、プログラム言語としての R の機能に関する知識を整理した本である。統計学的なこととグラフィックスは意図的にはずされている。

ほかの R の技術書であまり見なかった論点として、浮動小数点による数値計算の誤差のこと (第14章)がある。また、計算時間を短くするためのくふう (第21章) とか、使用メモリ量を設定すること (第20章の多数の話題のひとつ) などは、大量のデータをあつかっている人ならではの観点だと思う。

行列 (matrix) については第6章で、単なる2次元配列としてのあつかいだけでなく、線形代数にでてくる行列の演算のための関数や演算子があることが紹介される。そして第21章で、計算効率のためには (行列の要素についてループをまわすのではなく) 行列演算をつかうべきであると言っている。ただし本書を読んだだけでは線形代数の式を R のプログラムになおせるところまではいかない。それにはその態度で書かれた教科書的なものが必要だ。

【目次だけでも (A5判で) 13ページあるので、書きぬきには OCR をつかうことにした。ただし、スキャンの際の画像パラメータの設定がうまくないままやってしまったので (章の題名が灰色の背景に黒字で書かれているので、グレースケール画像にしたのだが、むしろ章の題名をあきらめて白黒二値で画素数の多い画像にするべきだった)、OCRが失敗して手作業でなおしたところがだいぶあった。それでも全部手でうちこむよりは楽にできたと思う。】

折りかえしのあとに 目次をつける。
Continue reading

熊谷 悦生, 舟尾 暢男 (2007, 2008) Rで学ぶデータマイニング 1. データ解析編

  • 熊谷 悦生, 舟尾 暢男, 2007: Rで学ぶデータマイニング I — データ解析の視点から。九天社。
  • 熊谷 悦生, 舟尾 暢男, 2008: Rで学ぶデータマイニング I — データ解析編。オーム社, 252 pp.+CD-ROM, ISBN 978-4-274-06746-4. [わたしはこの版を読んでいる。]

【Rの技術書の「在庫整理」はこれで一段落としておく。まだいくつかあるが、読書メモはほかの題材の本にうつることにしたい。】

本書は、2007年5月に九天社から出た本が、出版社が倒産して売られなくなってしまったので、2008年11月にあらためてオーム社から出版された。参照されている R のバージョンは 2.4.1 で、付録のCD-ROMにもそのバージョン(Windows、Mac、Linux (Vine, Fedora core, Suse) むけ)が収録されている。

わたしは2009年7月に買った。なお、第2巻「シミュレーション編」は買わなかった。ちょっとめくってみて、わたしの専門分野(地球科学)のシミュレーションとはだいぶちがうという印象をもったからである。

著者の熊谷さんは、大学の基礎工学部というところの教員で、統計学者といってよいと思うが、むしろ(本書出版のころではなくいまの用語で) データサイエンスのための技術をおしえている人だといったほうがよさそうだ。舟尾さんは数理科学の大学院を出て企業につとめている人で、個人ウェブサイトでR についての知識を提供している。その内容のうち「R Tips」は本にもなっている。

「データマイニング」は、「はじめに」で、「データという鉱山から「統計的な手法」などを施すことで「宝石」を見つける」ことだと説明されている。「宝石」とは、「有益なルール」「意外なパターン」「意思決定につながる情報」などをさすという。データマイニングのアプローチは標準的な統計学のアプローチとどうちがうかという話もある。わたしなりに言いかえれば、データマイニングは「探索型データ解析」なのだと思う。ただし「探索型データ解析」を、John Tukey 先生の主張や (紙と鉛筆の時代に開発された) その技法をさすのではなく(それもふくんでよいのだが)、もっと一般的な態度としてとらえた意味でだ。

本書は、Rのインストール、起動、終了や、プログラムの編集のしかたや、Rでつくったグラフを保存する方法について、MS Windows、Mac、Linuxのばあいについて説明している。まわりに利用者がいない読者に対しても親切な配慮だ。

それにつづいて第1部では、Rの文法事項の説明がある。そしてとくに「データフレーム」というデータ構造について、なかみのはいったデータフレームをつくるにはどのようにしてデータを入れたらよいのか(いろいろな方法)、データを見ること、抽出、ならべかえ(sorting)、編集、データの欠損や異常値のチェック・修正などの方法をのべている。

第2部では、まず、データの分布をグラフでみること、おもにヒストグラムと散布図をかく (要約統計量や相関係数の計算もする) ことを説明している。(ここまでは、基本的にはわたしもわかっていることだが、知らなかった方法もあって参考になった。ただし「3次元円グラフ」(pie3D)は すすめないほうがよいと思う。)
それから「判別」あるいは「分類」の話題になる。データにいくつかのグループに属するものがまざっていることがわかっていて、定量的な数量の情報からどのグループに属するかという定性的な情報を推定する問題だ(とわたしは理解した)。おもに「回帰木」という方法が紹介され、「判別分析」「ニューラル ネットワーク」「サポート ベクター マシーン」による方法もあることが紹介されている。ただし、それぞれについて R のパッケージがつくられていてこうすれば利用できるという話だけで、回帰木以外の技法の理屈の説明はない。この部分は、わたしは勉強しておらず、いまだにうとい分野だ。

第2部の後半では、現実のデータにふれる。いくつかの例がある。そのうち「漢字問題」は、日本漢字能力検定協会のデータをつかって議論しているが、「協会の検定基準の設定が妥当かどうかを吟味する必要があるのかもしれません」とも言っている。【わたしとしては、この協会が漢字の読み書きについては特殊な利害関係者であることに注意して見るべきだと思う。】

少子化問題を動機として、日本の出生率に関する解析がこころみられる。ただし著者は人口学の専門家ではなく、本書で、学術的に、あるいは政策の根拠として、この問題に答えようとしているわけではない。現実世界についての例題として、多くの人が関心をもち、データの権利問題が生じそうもない公共機関が提供するデータをつかってできるものをしめしたかったのだろう。日本の統計は 国立社会保障・人口問題研究所 や 総務省統計局 統計研修所、国際的な統計は OECD が、それぞれインターネットに公開しているデータをつかっている。回帰分析につかうモデルの選択のところで、AIC (赤池の情報量基準) がでてくる。(「基準」「規準」の文字づかいが統一されていないが、どちらもありうる。英語では criterion。) 【結果はわかりやすいものではないが、そもそも、国単位あるいは都道府県単位の集計値をもとに統計的に言えることから因果関係にせまるのはむずかしいのだと思う。】

折りかえしのあとに くわしい目次をつける。
Continue reading

高階 知巳 (2008) プログラミングR — 基礎からグラフィックスまで

  • 高階 知巳 [たかしな ともみ], 2008: R プログラミング & グラフィックス。九天社。
  • 高階 知巳, 2008: プログラミングR — 基礎からグラフィックスまで。オーム社, 312 pp. ISBN 978-4-274-06743-3. [わたしはこの版を読んだ。] 著者によるサポートページ http://www007.upp.so-net.ne.jp/t_takashina/R-Program/Sample_Program.html [本書巻頭 v ページに書かれたURLは無効になっている。]

このところ、わたしは「つんどく」というか「不良在庫」というかになっていた R の技術書を見なおしている。目次を書きぬいてみて、知りたいことがあったらどこを参照できるかがわかったので、ようやく「良在庫」にできたような気がする。

本書は、2008年5月に九天社から出た本が、出版社が倒産して売られなくなってしまったので、2008年11月にあらためてオーム社から出版された。参照されている R のバージョンは 2.6.2 だ。

わたしは2009年7月に買った。それまでにわたしが見た R の初級の本は、R を道具とした統計学の入門書だった。わたしは統計学がやりたかったわけではなくて、データをグラフにするのに R をつかいたかったので、グラフのつくりかたと、データを R であつかえるようにしたり、グラフで示したい量に変換したりするためのプログラムの書きかたを知りたかったのだった。

本書は、プログラム言語としての R でのプログラミングと、グラフ作図 (大部分は R でとくにことわらずにつかえる graphics パッケージによるもの) の技術を紹介したもので、統計学にはほとんどふれていない。著者は工学系の博士課程を出て企業に勤務している人で、画像処理を専門とし、パッケージ rimage の作者でもある。本書の例文も画像処理や信号処理の話題をつかっている (画像処理の教材としては説明がすくなすぎるが)。だから、この本はわたしの目的によくあっていると思って買ったのだ。

実際、わたしは R で作業をするときこの本をよく持ち歩いた。しかし、2020年12月に目次を書きぬきながらふりかえってみると、この本のうちごくかぎられたところしか読んでいなかった。わたしの R の利用スタイルが、ともかくプログラムをつくりはじめて試行錯誤で改良するものになっていて、わからないことがあるとオンラインマニュアルかネット上にあるユーザーの経験集のページにたよることが多く、本書はネット情報でわからなかったときだけ辞書的に参照したのだった。

【2009年ごろのわたしは、いくらかのデータ解析作業を R にうつしたものの、大部分はそれよりまえからの、Fortran と Awk で処理して GMT (Generic Mapping Tools) か GrADS で作図するというスタイルをつづけてしまった。本を読み、読書ノートを書くこともしていたが、それは科学と社会とのかかわりに関するものが多くなり、技術書を読むことはすくなくなっていた。】

しかし、目次を書きぬいてみて、わたしはもっとたびたび本書を参照したほうがよかったと思った。プログラミング言語としての文法の要点や、graphics 関数の機能の要点がよくまとめられていると思う。わたしはまだ R のパッケージをつくったことはないが、つくるとすれば付録の「パッケージの作り方」も参考になりそうだ(最新のパッケージ仕様も確認したほうがよいだろうが)。

折りかえしのあとに くわしい目次をつける。
Continue reading

D. ショーカー [Sarkar] (2008 / 石田 基広, 石田 和枝 訳 2009) Rグラフィックス自由自在 [原題 Lattice: Multivariate Data Visualization with R]

  • Deepayan Sarkar, 2008: Lattice: Multivariate Data Visualization with R. New York: Springer Science+Business Media LLC, 265 pp. ISBN 978-0-387-75968-5 (paperback)
  • D. ショーカー 著, 石田 基広, 石田 和枝 訳, 2009: Rグラフィックス自由自在。シュプリンガー・ジャパン, 296 pp. ISBN 978-4-431-10089-0. 2020年現在、丸善出版から発売、ISBN 978-4-621-06164-0 . 出版社サイトの本書のページ https://www.maruzen-publishing.co.jp/item/b294248.html

出版社や装丁は、英語版、日本語版とも、『Data Manipulation in R / Rデータ自由自在[読書メモ]と同じだ。英語版は2008年に出た。わたしは2008年3月に(出版社だったか通信販売業者だったかの新刊情報をみて)注文した。日本語版は2009年12月に出て、わたしはすぐ店頭で買った。しかし、ほとんど読まないまま来てしまった。2020年12月になって、ざっと目をとおした。ただし、まだ lattice ソフトウェアを実際にうごかしてみていない。

著者は、本書を書いたときはアメリカの大学に所属していたが、いま(2020-12-17)ウェブ検索してみると、インドのデリーにある Indian Statistical Institute にウェブサイトがある。https://www.isid.ac.in/~deepayan/ そこの associate professor として、Rのほか、統計学やプログラミング入門をおしえている。そこにある個人情報は大学(ISIの学士)からの学歴・職歴だけだが、ベンガル語についてのページがある。ベンガル語話者にちがいない。Sarkarをショーカーというのは、ベンガル語の発音が英語にとりこまれた形にちがいない。

William Cleveland の発想にもとづいて、Bell研究所の人たちが、S の上で Trellis というグラフ作図ソフトウェアをつくっていた。lattice は、Sarkar が R の上で (Murrell による grid パッケージを利用して) Trellis と互換の機能を実装したところからはじまったパッケージである(その後の発展はかならずしも互換ではない)。

第1章。lattice の特徴がのべられている。
latticeの特徴的な表現方法は「条件つきマルチパネル」だ。データをグループにわけ、グループごとに同じ仕様の図(たとえばヒストグラム)をつくってならべる。軸の要素の大部分は共通だから、別々の図をならべるばあいよりは画面を節約した配置ができる。
ソフトウェアとしての実装の特徴。latticeパッケージの「高水準関数」はグラフを作図する機能をもつのだが、実際は trellis というクラスのオブジェクトをつくる。そのオブジェクトについて print または plot を実行したときに実際の作図がおこなわれる。(ただしふつうは print が自動的によびだされるようにつくられており、この構造を意識しなくてもよい。) グラフの表現をすこしかえたいとき、オブジェクトを加工してから表示するという手順をとれる。(第2章 2.5.3 に update という関数によって加工する例がでてくる。update は第11章 11.3 で説明される。)

第2章。lattice で図をつくるときの基本的なこと。とくに、条件わけが2次元になっていたらどうするか。画面上にパネルを2次元に配置するのが基本だ。ただし、それぞれのパネルの中の図の縦横比が適切かという問題もある。Cleveland によれば (わたしがおぼえているのは Elements of Graphing Data [読書ノート])の1994年版だが、本書の参考文献は1988年の論文)、折れ線が水平から45度の方向にむいているのが見やすい。それも考慮してパネルの配置をくふうしたほうがよい。

第3章。1次元の分布の表現。1次元の散布図のようなもの、密度関数の折れ線グラフ、ヒストグラム、箱ひげ図、「バイオリンプロット」など。また、理論関数あるいは他のデータと組み合わせた Q-Qプロット。

第4章。数量の比較には(棒グラフなどよりも) 線上の dot の位置で値をしめす dot plot がよい (Cleveland の主張。Elementsの1985年版の主要な論点だった)。2次元以上の条件わけのあるとき、グループ内の比較とグループ間の比較が見やすいように dot plot を配置する。

第5章。2変量の散布図。そして、多変量のとき、散布図を総あたりでつくる散布図方陣(scatterplot matrix、本書の表現は「散布図行列」)。なお、そのほかの多次元数量データの表示方法として、「平行座標プロット」がちょっと紹介される。

第6章。3次元の数量を3次元グラフィックスで表示すること。3次元オブジェクトをつくっておいて人の操作で座標軸を回転して観察するというのは、Rのもとでは困難らしい。ここでできるのは、3次元に分布する点の位置を2次元に投影した静止画像だ。自由に回転できないとすると、画面上の長さはデータ値と直接関係がつかないから、Clevelandの基準ではよい可視化方法ではないだろう。ただし、latticeでは、視点をすこしずつ変えた一連の投影図のオブジェクトをつくっておいて比較しながら見ることはできる。これならばよいかもしれない。

ここから第2部。latticeのもつ技術各論。
第7-9章では、lattice のもとでいろいろな指定ができること。

第10章はデータ操作。とくに、カテゴリカル変数である「因子」(factor)や
「シングル」(shingle)を生成してつかうこと。(シングルは数量データの階級わけのようなものだが、となりどうしのかさなりあいをもつ。)

第11章は、trellisオブジェクトを操作すること。第12章は、trellisオブジェクトに対話的操作で要素を追加すること。

ここから第3部。発展的なこと。
第13章。
latticeの関数は、(traditionalな) graphics の関数、たとえば text() とくみあわせてつかうことができない。gridパッケージの関数、たとえば grid.text() とならばくみあわせられるが、text()とは仕様がちがう。そこで、text() とだいたい仕様が共通な panel.text() が用意されている。このほかの graphics の関数についても同様である。
13.5節では、地図への表示が紹介されている。これは maps パッケージによる (Sのもとで Becker が開発したものが R にくわわったのだ。) 口絵のアメリカ合衆国のcounty別ぬりわけを見ると、かなり実用性があるようにおもわれるが、本書だけでは手本としての情報がとぼしい。

第14章。
latticeの拡張として「S3メソッド」と「S4メソッド」というものがあるそうだ。(本書だけでは情報がとぼしいが、外の情報をさがすきっかけにはなる。)
また、あたらしい関数を書くこともできる。【ここで出てくる例が、円グラフ(pie chart)をマルチパネルで配置するものなのだが、Cleveland ならば、円グラフは数量を直観的に知覚する精度が悪いのでよくない、4.2節の例のようにグループごとにドットプロットにするか、帯グラフにせよというだろう。】

折りかえしのあとに 日本語版のくわしい目次をつける。
Continue reading

Paul Murrell (2006 / 久保 拓弥 訳 2009) R グラフィックス [原題 R Graphics]

  • Paul Murrell, 2006: R Graphics. Boca Raton FL USA: Chapman & Hall/CRC (Taylor & Francis Group), 301 pp. ISBN 978-1-585488-486-6.
  • Paul Murrell 著, 久保 拓弥 訳 2009: R グラフィックス — Rで思いどおりのグラフを作図するために。共立出版, 316 pp. ISBN 978-4-320-01903-8. 出版社サイトの本書のページ https://www.kyoritsu-pub.co.jp/bookdetail/9784320019058 ; 訳者によるサポートページ https://kuboweb.github.io/-kubo/ce/RgJp.html

英語版は2006年に出た本で、わたしは2007年に注文した。A5とB5のあいだのサイズのハードカバーだ。日本語版は2009年10月に出て、わたしは11月に店頭で見つけて買った。A5判のペーパーバックだ。著者は R の version 2.1.0、訳者は 2.9.1 を参照している。

Rによるグラフの作図には、とくにパッケージ呼び出しなしでつかえるようになっている graphics パッケージ(本書では「traditionalな作図」と表現されている)、lattice パッケージ、ggplot2 パッケージがつかわれていて、それぞれのユーザーは1つのやりかただけに熟練することが多く、複数の方法をしっかり紹介している本は少ない。本書は graphics と lattice を紹介している。ただしわたしは graphics をつかうやりかただけを習得することにしたので、本書の前半は参考にしたのだが、後半は読まないままきてしまった。

2020年12月、R についてのほかの本を見たあと、本書全体の目次の書きぬきをしながらざっと目をとおしたら、事情がわかってきた。

グラフの作図には、2次元平面上に点や線や文字を配置すること(「基本的な作図機能」と呼ぼう)と、それを利用してデータにもとづいたグラフをつくること(「グラフ作図機能」と呼ぼう)の2つの階層を考えることができる。ところが graphics パッケージは両者が未分化のまま開発されていたので、あたらしい種類のグラフを追加することがむずかしかった。R のソフトウェア開発のメンバーのひとりでもある Murrell は、 基本的な作図機能のパッケージ grid をつくった。それを利用して Deepayan Sarkar がグラフ作図機能のパッケージ lattice をつくった。lattice は Trellis という概念の実装とされている。Trellis は、William Cleveland の考えにもとづくもので、Bell研究所の S のプロジェクトの中でBecker, Cleveland, Shyu によってつくりはじめられていた。Sarker は固有名としての Trellis をつかうのを遠慮して関連する一般的なことばの lattice にしたらしい(パッケージ内の関数名には trellis もでてくるが)。別に、Hadley Wickham が、grid を利用して、ggplot2 をつくった。それは、Leland Wilkinson による Grammar of Graphics という概念を実装したものだ。

本書は総論的な第1章のあと、大きく第1部と第2部にわかれている。
第1部は graphics パッケージによるグラフ作図で、まず、単純な指定でどんなグラフをつくれるかが紹介され、それから、こまかく指定できることが紹介される。

第2部の主題は grid パッケージなのだが、まず lattice パッケージでできることを紹介している。それから、grid の基本的な作図機能の、座標系、「viewport」、「作図オブジェクト」などの概念と操作方法の説明がある。著者は、lattice の横ならびに位置づけられるようなグラフ作図機能の開発者にむけて、作図関数や作図オブジェクトのつくりかたの例をしめしている。地球上に分布する数量を地図とくみあわせて濃淡で表示する例があるのは、そういうことをやりたい者にとってはありがたい。

(わたしは Cleveland の Elements of Graphing Data [読書ノート] を読んで、おおいに賛同したにもかかわらず、lattice をつかう気にならないままきてしまった。それは、latticeの紹介をいくつか読んで、それではわたしの需要をみたせないと思ったからだ。本書の後半を読んで、lattice の機能がたりなかったら、grid にもとづいて開発するという道もあることを知った。ただし、本書の第6-7章の記述はオブジェクト指向プログラミングを前提としているが、わたしのあたまは旧式の手順立て型プログラマーのままなので、ついていけそうもない気がしている。)

折りかえしのあとに日本語版のくわしい目次をつける。
Continue reading

P. スペクター [Spector] (2008 / 石田 基広, 石田 和枝 訳 2008) Rデータ自由自在 [原題 Data Manipulation with R]

  • Phil Spector, 2008: Data Manipulation with R. New York: Springer Science+Business Media LLC, 152 pp. ISBN 978-0-387-74730-9 (paperback)
  • P. スペクター 著, 石田 基広, 石田 和枝 訳, 2008: Rデータ自由自在。シュプリンガー・ジャパン, 181 pp. ISBN 978-4-431-10047-8. (2020年現在、丸善出版から発売、ISBN 978-4-621-06154-1 )

2008年3月に英語版の新刊情報を見て注文した。日本語版は2008年11月の発行で、わたしは2009年3月に店頭で見て買った。英語版、日本語版とも、A5判よりすこし大きい判のペーパーバックで、英語版の表紙は赤茶色から黄土色の横しまの背景、日本語版はSpringerの数学の本に多い黄色の表紙だ。わたしは2008年当時、気象データの解析の道具を R にかえようと思って、R の入門書で勉強していた。データの形式変換については入門書レベルだけではたりないと思い、この本に期待したのだった。しかし、実質的に読まないままきた。本書の書きかたはすでに R をつかいこなしている人むきで、R の ベクトル、リスト、データフレームなどのデータ構造をまだ理解していなかったわたしには意味がつかめなかったのだった。そして、わたしは仕事の道具を R にきりかえないまま来てしまった。

2020年12月に、手持ちの R に関する本をあつめてみて、これがあったのを思いだした。ほかの本をいくつか読んだあとでこれを見ると、話題がだいぶわかってきた。

第1章には、まず、Rがもつことのできるオブジェクトには「モード」と「クラス」があること、そして、だいたい同じ内容でモードやクラスのちがうオブジェクトをつくるにはどうしたらよいか、といった話がある(わたしはまだくわしく理解していない)。
ひとつ重要なのは、欠損値の扱いだ。欠損値は NA でしめされる。欠損値であるかどうかの判定には (NAとの比較という形でなく) is.na 関数をつかう。統計量をもとめる関数の na.rm オプションなど、欠損値に対応した処理がいろいろ用意されている。数値計算上で「数でない」ことをしめす NaN もつかうことができる。is.na では NaN も NA とみなされるが、is.nan で区別することができる。

第2章はデータファイルの読み書き。わたしにとっては当面、read.table と write.table が重要だ。一度によみこめない大量のデータを読むことも必要になるかもしれず、わたしには本書2.7節の記述だけではできそうもないが、手がかりにはなる。

第3章は、Rの中から外のデータベースにSQL言語でアクセスして読み書きすること。Rのdata frameと、いわゆるrelational database とは、だいたい同じ発想だから、それを関連づけてつかいたくなるのは当然だ。ただし、本書が出てから10年以上たっているから、ほかのソフトウェアとの連携の具体的なやりかたについては、必要に応じてあたらしい情報をしらべなおす必要があるだろう。

第4章は日付のあつかい。日付をあつかう Dateクラスと、日付と時刻をあつかう POSIXlt、POSIXct クラスが説明されている。

第5章は factor というデータ構造。本書日本語版では「因子」となっている。(別の本では「ファクタ」となっていた。) 因子分析の因子ではない。この章のあたまに「取りうる値の種類が限られている変数」「カテゴリカル変数」であると説明されている。実数型の変数を階級わけして factor をつくったり、日付・時刻から factor をつくったりする方法の説明がある。

第6章の題目は「添え字」(subscript)となっている。ベクトル、行列(matrix)、リスト、データフレームなどの要素や部分をどのような形で指定できるかだ。

第7章は文字列の操作。基本的な操作のほか、「正規表現」(regular expression)のつかいかたがある。

第8章はデータの「集約」。一連のデータのうちで、ある条件にあてはまるものの個数をかぞえたり、集計したり、中央値そのほかの統計量を計算したりする操作だ。

第9章はデータの変形。列名をつけかえる、変数を二値化する、表の縦横を入れかえる、などの操作。複数のデータフレームを結合する操作のノウハウは、わたしにとって(一連のデータを複数回にわけてダウンロードしてきたり、複数回のシミュレーションの結果を比較したくなったりするので)すぐ役にたちそうだ。

折りかえしのあとに 日本語版のくわしい目次をつける。章のレベルで、英語版の表題もつけておく。
Continue reading