オープンアクセスの電子ブックをダウンロードしてみよう―Pythonや制御理論や統計学の教科書、力学の教科書やFelix Kleinについての本などなど

以前の記事に書きましたが、分子生物学会のランチョンセミナーでオープンアクセスの電子ブック(無料で読める電子ブック)を探せるサイトDOAB(Directory of Open Access Book)を紹介しました。リンク集にもリンクをのせてあります。今日、ちょっとのぞいてみるといろいろオープンアクセスの本が新しく公開されていました。検索窓にPythonと入れて検索してみると、Pythonに関連した本がずらずらとでてきます。本のLicenseの下にある
Abstract | Keywords | Free access | Buy the book |の部分のFree accessのリンクをクリックすると本がダウンロードできます。いろいろな本がありますがPythonを学ぶにはIntroduction to Scientific Programming with Python
Authors: Dr. Joakim Sundnes in Simula SpringerBriefs on Computing。Springer Nature (2020) とか
Programming for Computations – Python
Authors: Linge, Svein — Langtangen, Hans Petter
Book Series: Texts in Computational Science and Engineering, Springer Nature (2020) などは面白そうです。
また神経科学へのPythonの応用を紹介している本で
Python in Neuroscience
Authors: Eilif Muller — James A. Bednar — Markus Diesmann — Marc-Oliver Gewaltig
Book Series: Frontiers Research (2015)Publisher: Frontiers Media SA
も神経科学に興味がある人には面白いのではないでしょうか。

検索窓にソフトウエアのMathematicaをいれて検索すると、こんどは制御理論の教科書がでてきました。Mathematicaを使って制御理論を学ぶ教科書のようです。
Control Theory Tutorial: Basic Concepts Illustrated by Software Examples
Author: Steven A. Frank Book Series: SpringerBriefs in Applied Sciences and Technology, Springer Nature (2018)

ほかにもいろいろ面白そうなオープンアクセスの本があります。Browseボタンを押して色んな本をタイトル、分野、そして出版社別にながめることもできます。Publisherで検索すると、各出版社から何冊くらいオープンアクセス本がでているかがわかります。とても多くのオープンアクセス本をだしているSpringer Nature社の面白そうなタイトル(2019-2020年発行)を以下にならべておきますので、検索してみてください(直リンクははってないので、上のサイトでタイトルで検索するなどしてみてください)。科学だけではなくて哲学、社会学の本とかもあります。たとえば王陽明の紹介本とかもありました。

Make Life Visible
Prof. Yoshiaki Toyama, Ph.D. Atsushi Miyawaki… (2020) 生物科学の可視化の技術の本のようです。

Statistical Population Genomics
Julien Y. Dutheil in Methods in Molecular Biology (2020)

Gene Drives at Tipping Points
Precautionary Technology Assessment and Governance of New Approaches to Genetically Modify Animal and Plant Populations
Prof. Dr. Arnim von Gleich… (2020) ジーンドライブについての本

Data Journeys in the Sciences
Dr. Sabina Leonelli, Dr. Niccolo Tempini (2020)

The Amazing Journey of Reason
from DNA to Artificial Intelligence
Mario Alemi in SpringerBriefs in Computer Science (2020)

Introduction to Scientific Programming with Python
Dr. Joakim Sundnes in Simula SpringerBriefs on Computing (2020) これは最初に紹介した本です。

The Pangenome
Diversity, Dynamics and Evolution of Genomes
Dr. Herve Tettelin, Duccio Medini (2020)

Bioimage Data Analysis Workflows
Dr. Kota Miura, Dr. Nata?a Sladoje in Learning Materials in Biosciences (2020)

Good Research Practice in Non-Clinical Pharmacology and Biomedicine
Editors :Anton BespalovMartin C. MichelThomas Steckler 薬学や医学での研究の再現性、正しいサンプリング、実験デザインなどを教えてくれる本です。

The Everyday Life of an Algorithm
Authors: Daniel Neyland アルゴリズムのやさしい紹介の本。

Principles of Mechanics
Fundamental University Physics
Salma Alrasheed in Advances in Science, Technology & Innovation (2019) 物理の力学の本

The Ethics of Vaccination
Dr. Alberto Giubilini in Palgrave Studies in Ethics and Public Policy (2019) ワクチン接種の必要性を議論している本

Understanding Statistics and Experimental Design
How to Not Lie with Statistics
Prof. Dr. Michael H. Herzog… in Learning Materials in Biosciences (2019) 統計学と実験計画法の教科書

The Legacy of Felix Klein 数学者フェリックス・クラインについての本
Prof. Dr. Hans-Georg Weigand… in ICME-13 Monographs (2019)

The Brownian Motion
A Rigorous but Gentle Introduction for Economists
Authors;Andreas Loffler, Lutz Kruschwitz 経済学者のためのブラウン運動の理論の教科書。

写真は5月ごろに撮影したバラの花をホテルにしているアマガエルです。昼間はこのバラの花の部屋の中でじっと休憩していますが、夜になると外にでかけて大きな声で鳴きます。今も外はカエルの声がにぎやかです。

AntConcの使い方と活用法その2―自分専用の英語論文例文集(コーパス)の作り方pdftotextの使い方

前回紹介した英語論文用の例文集に使えるAntConcはテキストファイルやhtmlファイルを扱いますが、最も身近な英語の例文集の素材はpdfファイルだと思います。そこで今回は英語の例文集の作成のために重宝する、「pdfファイルをテキストファイルに変換する方法」を紹介します。AcrobatやFoxit Readerなどでpdfを開いて、textファイルとして保存する方法は、pdfファイルが数百、数千ある場合は手作業では対応できません。こんな場合は、Acrobatなどで複数のpdfファイルを一つのpdfファイルに結合してからtextファイルに変換するという方法もありますが、そんなめんどうくさいことをしなくてもpdftotextという無料ソフトを使えば一括で複数のpdfファイルをそれぞれ別のテキストファイルに変換でますので、やってみましょう。

まずpopplerというpdfを扱うプログラミングライブラリ(その中にpdftotextが入っています)をお使いのWindows, Mac, linux用のものを選んでダウンロードしてインストールします。linuxではsudoコマンドでpopplerをダウンロードしてインストールできますし、Mac版もアプリストアからダウンロードできるはずです。私が使っているWindows 10やWindows 7のPCの場合については、ここに詳しいインストールの仕方が書いた記事がでているのを見つけました。大変丁寧に書いてありますのでそのよく読んでインストールしてください。私もこの記事のとおりにインストールして利用しています。

私はCドライブ直下にpoppler-0.68.0というフォルダ(ダウンロードしたPopplerの圧縮ファイルを解凍(解凍ソフトは註1をみてください)してできるフォルダ名のままコピーしただけです)を作り、その直下にあるbinフォルダ(binaryフォルダの意味で、実行ファイルが入っているフォルダのことです)に自分の必要なpdfファイルを集めてテキストファイルに変換しています。shareフォルダの下にはpopplerとrenameしたデータファイル(上述のホームページにあるリンク
https://poppler.freedesktop.org/poppler-data-0.4.9.tar.gz からダウンロードしたpoppler-data-0.4.9.tar.gzファイルを解凍したもの。註1参照)をおいてください。あとは以下のコマンドを記述したバッチファイルをテキストファイルエディタで作ることが必要です。

for %%i in (*.pdf) do (pdftotext %%i %%i.txt)

このコマンドをテキストファイルエディタにうちこみ、できたファイルに適当な名前(pdf2txt.batとかすきな名前)をつけて保存します。保存のときデフォルトではテキストファイルで保存されれウため、pdf2txt.txtになりますのでファイル名の変更でpdf2txt.batにするか、保存時に.batで保存してください。保存場所はpdftotextのあるフォルダ(上の例ではbinフォルダ)にします。

あとは、変換したいpdfファイルを上のbinフォルダにコピーして、コマンドプロンプトでpdf2txt.batファイルを実行するだけです。日本語のファイルも英語のファイルもともにテキストファイルに変換されます。(invalid font weightというエラーが出るかもしれませんが無視してよいようです。不都合があったら教えてください。)

以下はコマンドプロンプトが初めての人むけの簡単な説明です(註2参照)。

バッチファイルというのはwindowsのコマンドプロンプト(windows7では「すべてのプログラム」の部分をみていくと、アクセサリフォルダの下にあります。windows10では下の図の左端の写真ようにシステムツールの下にあります。)でファイル名を入力してエンターを押すと、ファイル内に書いてあるコマンドを逐次実行するというものです。

矢印のコマンドプロンプトをクリックして起動するとき右クリックで、管理者として実行を選んで起動しておくと管理者としてログインしていないときにおこるトラブルをさけられますので注意してください。

今回のバッチファイルは以下のような内容で動きました。

for %%i in (*.pdf) do (pdftotext %%i %%i.txt)

意味は、iという変数にpdfのファイル名をいれ、それにpdftotextコマンドを実行してpdfのファイル名(%%i)のついたテキストファイル(%%i,txt)を作るという操作をフォルダ内にあるすべてのpdfファイル(*.pdfというワイルドカード*を使っている部分で、任意のファイル名のpdfファイルを表しています) がなくなるまで一個ずつ繰り返す(for    doの部分)というものです。

コマンドプロンプトを上に説明したように起動すると、黒いバックに白い字の画面が開きます(上の真ん中の図)
自分の今いるディレクトリ(フォルダ)の名前が表示されています。これから目的のpopplerのフォルダを探すとき、たとえばCドライブの直下にpopplerのフォルダがあるなら、コマンドプロンプトでcd ..(cdとうって、ピリオドを二回うちます)というコマンド(これはディレクトリを上に登って行くコマンドです)を何回かうってディレクトリをC:¥>にします。上の図の右端の図。
dirとうつとディレクトリやファイルの一覧が表示されます。
popplerのフォルダへ移りたいのでcd poppくらいまでをタイプしてあとはタブキーを押してください。タブの自動補完機能でcd poppler-0.68.0と自動入力されます。(このタブ補完の機能はlinuxで重宝するのですがWindowsのコマンドプロンプトでも利用できますので活用してください。) enterキーを押すとC:¥poppler-0.68.0>と表示されてディレクトリを移動したのがわかります。ここでdirとうってenterを押すとディレクトリ内のファイルとフォルダが表示されます。プログラムファイルのあるbinのフォルダ(ディレクトリ)があるのを確認してください。cd binとうってenterを押すとbinのディレクトリに移動します。C:¥poppler-0.68.0\binとなっていたら成功です(上の右端の図)。再びdirとうってenterをおします。これでこのbinフォルダ内にあるすべてのファイルとフォルダが表示されます。あとはそこにコピーしてあるバッチファイルpdf2txt.batを実行する(コマンドラインにpdf2txtとうってenterを押す)と、自動的にファイル名のついたtxtファイルができあがります。

こうして一括でpdfファイルをテキストファイルに変換したら、あとはこれらのテキストファイルをAntConcに読み込んでコーパスとして論文を書くときに参照すればいいわけです。

もちろんテキストファイルですから、テキストファイルを一括検索して、検索結果にタグジャンプして参照できるgrepコマンドも使えます。適当な、grepコマンドが使えるエディタ(たとえば有料ですが秀逸なエディタでおすすめの秀丸エディタ)でpdfの内容を串刺し検索するのもよいですね。pdfgrepというソフトもあって、これを使えばpdfファイルのままでgrepができるそうです。これはまだ使っていません。windows版をダウンロードしてさきほどのbinファイルにコピーしておけば、コマンドプロンプトで使えるのですが、linux版とちがって検索語がハイライトしなかったりしてまだ使いこなせていません。興味のある方は使ってみてください。

註1:圧縮ファイルの解凍には私は7-zipを使っています。たいていの圧縮解凍はこれでできます。
註2:パスの通し方とかは説明しないでpdftotextを使う方法を説明していますので、良く知っている方はパスを通して適当な場所にpdftotextをおいて使ってください。