データサイエンスの勉強をしているので、初歩の初歩ではありますが、学習のメモと記録としてこのブログで紹介しておきたいと思います。
データ分析の心構え
まず、データサイエンティストの心構えの部分ですね。
データを扱う際の心構えといっても良いかも知れません。
そちらが、この3点。
- データの概要を確認する
- すごい分析結果が出たら疑って客観的に見直す
- テクニックに走るべからず
なまじっか、知ってるからこそやりがちなことかも知れませんね。
僕のようなおっちょこちょいの人間に対する戒めじゃないかなwww
こうならないように、まずは基礎分析というのが大切だと言われています。
基礎分析とは
さて、そもそも基礎分析とは何でしょうか。
データサイエンスでデータを活用する前に、「そのデータが一体どういう状態なのか」をしっかりと把握することですね。
基礎分析は、このような手順で行います。
- データの読み込み、データを見てみる
- データを詳しく見てみる
- グラフを書いてみる
- 欠損値を調べる
- 相関関係を調べる
これを怠ると、次のようなことが起こってしまいます。
・データが足りないと後になって発覚し、今までの作業が無駄になってしまう
・現実と異なる分析結果になってしまう
こういう事態にならないように、まずは基礎分析をしっかりと行うことで効率よくデータ分析や予測の作業を行うことですね。
僕も普段は会社のシステムなどから帳票を引っ張り出して来るときによく失敗したりしています。
分析をするという事に慣れていないと、こういうことが起こってしまいますよね。
「あの時間は一体何だったんだ・・・」って、よく落ち込んでますから。
Pythonのプログラミング学習
今まで散々CakePHPの事とかこのブログでも書いてきましたが、今回からPythonについても書いていきたいと思います。
(余談ですが、僕の気持ちの移り変わりも激しいものですね…。
CakePHPは一体どうするんだ?)
変数について改めて
変数というのは、「箱」と例えで表現される事がやっぱり多いですね。
数字や”文字列”、データフレーム(表)を、この変数という箱に入れられると理解しておきましょう。
この辺りは、よくご存知の方も多いのではないでしょうか。
変数の例
value = 5
これは、valueという変数に、数字の5を入れるというプログラムです。
char = ”テスト”
これは、charという変数にテストという文字列を入れるプログラムです。
この時、文字列には″″(ダブルクォーテーション)で囲んで記述するというルールがあります。
train = pd.read_scv("train.csv")
これは、trainという変数に、pandasのread_csvという関数を使った記述の方法です。
pandasというのは、データの読み書きをしてくれるPythonのフレームワークです。
このpandasを略してpdとしている前提での記載なのです。
そして、そのpandasのread_csvという関数を使って、train.csvを読み込んでいるというプログラムですね。
関数の例
Pythonの場合も、関数をよく使います。
関数とは、エクセルなどでも使われているSUM関数のような、計算式のようなもので、いわゆる特定の処理をしてくれる命令文の事を言います。
この関数を使う場合、変数と関数の間に.をつけて使っていきます。
例えば、
train.plot()
とか、
train.plot(option1,option2)
などと使います。
また、ここで書いた「option」のことを「引数」という
プログラミングの学習もやはり身体知
先ほどまで、Udemyで少し前に勉強したセクションをもう一度改めて勉強し直していました。
やっぱり一回やっただけでは身につかないですね。
全然頭の中に残っていませんでした。
やはり、こういうものも日々の継続とコツコツ型での修練なんだと実感しました。
これで毎日コツコツと続いていけば、それなりに身につくのではないかなと実感も持てました。
やっぱり慣れて来ると、こういう風に書くんじゃないかな?という予想しながらプログラムがかけるようになるので、まとまった時間をプログラミングに費やすということは必須条件なんだろうと思います。
統計学や数学の勉強も
統計学などの勉強とかは、まだ何も手をつけてはいませんが、やはり学習していく中で、聞き慣れないワードや定義を毎回確認しなければならない単語というのも出てきますね。
とはいえ、これは日本語なんだけどな・・・。
ですが、データサイエンスや機械学習などを学ぼうと思うと必要最低限の基礎知識だとも思うので、ここは焦らずじっくりと取り組みたいなと思いますね。
まだ今はPythonを使った学習や、ブログの運用が僕にとっては優先度が高いので、急に統計学や数学の勉強などはするつもりはないですけどね。
ただ、やっぱりテクノロジーの領域って、とても領域が広いですからね。
一つの専門性を高めるには、こういった地道な学習や活動が必要ですね。
日々、精進して参ります。
Pythonに関してはUdemyのコースでほとんど学びました。
Udemyで始める機械学習とPythonおすすめ入門コースという記事でまとめてご紹介していますので、参考になればと思います。
今日はこの辺で。