雑史

思ったこととかメモとか

【第一回目授業】概要とPandasを触ってみた

概要

とりあえず、先日7日水曜日に最初の授業があったので振り返り。

統計学機械学習の大まかな違い

機械学習

  • 予測
    • 購入履歴から、興味のありそうなものを予測する
  • 分類(グルーピング)
    • ツイート文からどのような職業の人かグルーピングする

統計学

  • 特徴理解
    • アンケートのから、結果を出しやすい人の性格の特徴を把握する
  • 効果検証
    • デザイン変更による、定量的な効果検証

上記のように分類することができる。

Pandasを触ってみた

以下は、普段webエンジニア(PHP)として、ファイル操作等をしていて、すごいと思った関数、備忘録として残す。

get_dummies関数

データが数値の大小で判定できない、カテゴリーデータだった場合に、ダミー変数を自動で作成してくれる
以下のようなデータ(user_info.csv)があったとする。カテゴリーデータはsexで男が0、女が1、LGBTQが2とする。

uid name sex
1 taro 0
2 hanako 1
3 hogehoge 2

これを以下のようにすると

infoData = pd.read_csv("user_info.csv")
newData = pd.get_dummies(data=infoData, columns=["sex"])
uid name sex_0 sex_1 sex_2
1 taro 1 0 0
2 hanako 0 1 0
3 hogehoge 0 0 1

といった風に、01で判定できるようになる。

iloc

これは最初よく意味が分からなかった。 使い方は以下のよう

for i in newData.index:
    if newData.iloc[i]["sex_0"] == 1:
        print("男です")

ilocの使い方は、行と列を指定して取得するというもの。 上記のコードだと、newDataのi行目のsex_0を取得して判定。 慣れれば、簡単。