恒星間ボトルメール

Interstellar Message in a Bottle

RとPython

 Pythonは初心者が勉強しやすく機械学習とデータ分析のパッケージが充実していることから大人気のプログラミング言語である.一方,Rは統計処理が得意なプログラミング言語として根強い人気をもつ.今回はRとPythonの比較を行う.

 まず,インターネット上や書籍で情報が多いのは確実にPythonである.ソースコードの「レシピ」の量はPythonがRに対して大差を付けている.「Python tsv 書き出し」というふうにやりたいことをネット検索すると初心者向けに分かりやすく説明した記事が多数ヒットする.Pythonは書籍上の情報も多いことが特色である.書店のプログラミング言語のコーナーに行くとPythonの本が棚にぎっしり置いてある.ただ,注意すべきなのはRの書籍はプログラミング言語のコーナーではなく数学書のコーナーに置いてあることが多いことである.だからRの本は数学書コーナーで探そう.

 プログラミング言語として制御構文はPythonとRの両方にある.どちらの言語でもif文やfor文はしっかりあるため,基本的な条件分岐や繰り返しはどちらでも書ける.

 違いが出てくるのは複雑な作業を行おうとしたときである.機械学習をしようというときはそれ用のパッケージが充実しているPythonを使うのがよい.一方,統計解析を行うときはRのたとえばtidyverseのパッケージ群を使うとスマートに統計処理を行うことができる.

 この違いは日本語と英語の使い分けになぞらえることができる.日本の歴史は日本語で語るのが語りやすく,英米哲学は英語で語るのが語りやすいだろう.同じようにPythonにはPythonの今までの積み重ねから得意なものがあり,RにもR固有の積み重ねがあるため得意分野がある.

 まとめると,まずRとPythonはそれぞれ得意分野がある.情報量の観点ではPythonに軍配があがるので基本的にはPythonから始めるのがおすすめである.しかしRがよく使われる分野ではRで処理を行っていくのが勉強しやすいこともあるだろう.