Rを学び始めて半年経過。「プログラミング」に対して思ったこと。

スポンサーリンク

うん、これはプログラミングじゃない。

 

皆さんコンニチハ。リトマです。

 

もうすぐR言語(統計分析ツール)を学び始めて半年になろうとしています。

 

今日は、Rの進度などの話ではなく、Rでの「プログラミング」が他のプログラミングとどう違うかについて、お話したいと思います。

 

スポンサーリンク

Rとは。

Wikiには、

R言語(あーるげんご)はオープンソース・フリーソフトウェアの統計解析向けのプログラミング言語及びその開発実行環境である。

とあります。

 

データサイエンティストたる人々がよく使う、皆さんおなじみの定番統計解析言語です。世間での位置づけは「プログラミング言語」であったり、そうでなかったり。多くの記事で、「データサイエンティストに必要なもの」として「プログラミング力」が掲げられているので、彼らがよく使うこのR言語は一種の「プログラミング言語」と見られることがあります。

 

しかしこのR言語、

 

全ッ然プログラミング言語じゃない。

これが今の僕の感想です。

 

「プログラミング」

ロボットやAIの構築に「プログラミング」が使われていることは、機械に詳しくない皆さんでもおなじみでしょう。他にも、多くのウェブサイトやアプリなど、多くの場面でプログラミングは使われています。

 

このサイトだってそうですし、DropboxYoutubeなど、多くのものがプログラミングによって作られています。

 

そのようなプログラミングとR言語は全然違う。

どういうことか。

 

Rってものを作るためのものではない。

 

究極的にはこういうことです。

もっと砕いて説明しましょう。

 

R言語は、「最終的に統計分析するために、データをハンドリングする技術」を学びます。

例えると、魚の調理の仕方を学ぶといったとこでしょうか。

 

それに対してプログラミング言語は、大体が「構築するため」のものです。

これは、家を建てることに似てるといえます。

 

前者は調理法で後者は構築。

響きは似ていますが、性質は全然違います。

 

Rではなにか「データ」を与えられて、それを切ったり並べかえたりしながら分析できるように持っていく。そしてその分析結果を読み取る。そしてその結果から出てきた数字をまた切ったり並べ替えたりする、といった感じです。

 

Rは所詮計算機なのです。「構築」するためのものではありません。

これが、わたしが「これはプログラミングじゃない。」って思う理由です。

 

構築する楽しさ

多くの方にとって「構築」とは「楽しい」ことです。

 

皆さんも昔よくレゴをしたと思います。

 

私がPHPCSSWebサイトを作るときのプログラミング言語)などをいじって何かを作るとき、うまく行かなくてイライラすることもありますが、大抵は楽しみながらできます。

 

自分のWebサイトの中に、「Twitterへのアクセスボタン」を作りたいとしましょう。

 

その時、「作り方を紹介しているサイト」たるものを見ながら、できる人が作ったコピペをいじったり作り変えたりして、だんだん仕組みを理解していくことができます。そして試行錯誤してTwitterのボタンという目に見えるものが「構築」されていくのです。

 

「ココをいじったらこうなって、ココを動かしたらエラーになって。」などなど。

そこには作る楽しさがあります。プログラミングでは。

 

しかしRにはそれが感じれないのです。故に楽しみながら学びにくい。

 

しかも、「有名な人が書いたスクリプトをコピペする戦法」はRではほぼ使えません。

 

扱うデータによって調理の仕方が変わるのです。一概にコピペは成り立ちません。

ココも楽しんで学びにくい原因だと思います。

 

おわりに。

これからプログラミングを学びたいという皆さん。

 

ビッグデータを扱うという意味で、データサイエンスはこれからの時代重宝するのは確かです。

 

しかし、データサイエンスで使う「プログラミング」は少し本来のプログラミングとは違っているんだよってことは分かっていただけたらなと思います。

 

この記事が「データサイエンティストを目指す方」へ届きますように。

 

ご精読ありがとうございました。

スポンサーリンク
スポンサーリンク
思想
スポンサーリンク
/ フォローする /
ハナワトリクス