博士号取得者がビジネスマンになるいくつかの方法の1つとしての、データサイエンス専門家という道(その5)

博士号取得者がビジネスマンになるいくつかの方法の1つとしての、データサイエンス専門家という道(その5)

<<前の記事に戻る

 

全くの門外漢だった私がデータサイエンス専門家になるにあたって「そもそもコンピュータに対する理解」「プログラミング言語の理解」の2つの学習を自らに課したわけですが、今回は後者について具体的に紹介したいと思います(前者は前回の記事で紹介させていただきました)。

 

2.プログラミング言語の理解 まずプログラミング言語について学ぶ場合、知っておいた方が良い事があります。それは最初の教材は買う必要がない…ということです。というのは、初心者用の教材は、どんな言語を学ぶとしても、インターネット上に転がっているからです。(私が学び始めたころでも既にそういう傾向でしたが、最近ではさらに顕著になっています。) 今から学習をするのであれば、これを利用しない手はありません。 例えばドットインストールというサイト。このサイトで学べば、データサイエンスではよく利用されるPythonやExcel VBAについての学習もできます。

その他にもホームページを作るためにhtmlやcssについて学んだり、iOSアプリやAndroidアプリを作る方法まで学ぶことができます。

http://dotinstall.com/

上記のようなサービスがある…という事を理解して頂いたという前提の上で、私の学習遍歴を書きます。 私は(プログラマーではなく)データサイエンスの専門家になりたいと考えていたので、まずはテーブル型データの扱いについて勉強をしました。一番最初に勉強したのはSQLとSAS言語です。SQLはデータベースを操作するための言語、SASはSAS Institute社が販売しているSASというソフトウェアを操作するための言語です。 SQLを勉強する…といっても、データ解析者に必要なのは多くの場合、SELECT文だけなのです。私の頃はまだ良い教材が無かったので、手当たり次第、データベースやSQLの本・参考書を読んでみる…という事をしていましたが、今は違います。例えば「データ集計・分析のためのSQL入門」という本も出ています。正直、ここまでSQLでデキなくてもいいだろうと思いますが、Chapter4ぐらいまでの操作ができるようになると、現場でも戦力になれると思います。

データ集計・分析のためのSQL入門 SASについては、正直、なかなかいい本はないと思います。SAS Institute Japan 社が実施しているトレーニングを受講するなど、誰かに教えてもらうチャンスがあるならば、実は難しい言語ではないのですが…。もし、身近に教えてくれる人がいるならば、チャンス!と思って素直に教えてもらうのが良いでしょう。尚、SASは学習用にフリーの実行環境が提供されています。

http://www.sas.com/ja_jp/learn/analytics-u.html VMWareのイメージをダウンロードして利用しますので、VMWare Playerをインストールする必要があります。 https://my.vmware.com/jp/web/vmware/free#desktop_end_user_computing/vmware_player/6_0

上記の後に学んだのはRでした。R言語の教科書はそれほど星の数ほどあるので、自分で好きなものを選んで購入すればいいのですが、私はまず以下のサイトで学んだのでした。

http://cse.naro.affrc.go.jp/takezawa/r-tips/r.html SQLとSASを学び終わっていたので、このサイトで学ぶだけでも、概ねやりたい事はできるようになります。もし、さらに実力を伸ばしたいのならば、私は「Rクックブック」「アート・オブ・Rプログラミング」という2冊の本を推薦いたします。

Rクックブック アート・オブ・Rプログラミング

この2冊、イケてますね。特に後者を一読すると、Rの世界観がよくわかります。 その後、Pythonを学びました。今ならばドットインストールから学ぶのでしょうが、当時の私は、はやり星の数ほどある初心者サイトのうちの1つから学びました。Pythonは統計学や機械学習系のモジュールがたくさん用意されているので、一度覚えておくと、とても便利です。

初心者サイトで学んだら、RやSASなどで覚えた操作をPythonでもできるようにトレーニングしてみましょう(すると、本格的にデータ解析でPythonを利用する事が可能になります)。 最後にJavaを学びました。これは急遽、業務で使う事になったので学び始めたのですが、コレが良かった。Javaは「オブジェクト指向」という考え方でプログラミングをしやすいように言語体系ができあがっています。この「オブジェクト指向」というのを学びながらJavaを学ぶことに意味があります。データサイエンス系の方はJavaを知らない人も結構多いのですが、これは勿体ない事です。最初はドットインストールで良いかと思います(…と書いているのは、私が学んだ当時はドットインストールが無かったので、他のサイトから学んだからです)ので、是非、トライしてみてほしいです。Javaを学ぶことで、プログラミングスキルが底上げされるのを感じるはずです。

上記ぐらいの言語に接すると、あとはどんな言語に触れる事になっても、自分なりに「言語を学ぶ方法」というものができあがっていますので、それほど障壁もなく学ぶことが可能になります(シェルスクリプトのようなものを含め、何が来てもそれほど怖くありません)。 前回と今回で、私が1年目に学んだ「IT系のスキル」について紹介させていただきました。次回は「データサイエンスのスキル」をどう学んだかについて紹介させていただきます。

 

続きを読む>>