LoginSignup
5
4

More than 5 years have passed since last update.

python でデータサイエンスを始めるにあたって覚えたほうがいいメソッドまとめ(kaggle titanic tutorial)

Last updated at Posted at 2018-05-13

背景

今回 kaggle の titanic チュートリアルを行いました。
精度は78.5%前後と、大した精度ではなかったので手法は書きませんが、
なれない python でのデータ分析だったので、自分用のメモとして、
もしくはこれから同じようにpythonでデータ分析を始める人向けにまとめておこうと思います。

pandasのメソッド

import pandas as pd で使えるようになります。

CSVの読み込み

pd.read_csv('filename')

Dataframe の操作

CSVとして書き込み

data.to_csv('filename')

Dataframe を1カラムで初期化する

dataframe = pd.DataFrame({'col_name':[]})

keyの一覧を取得する

dataframe.keys()

先頭n個のデータ表示

dataframe.head(n)

特定のカラムすべてのデータに対する操作

dataframe["col_name"].apply(lambda x: 0 if x == 'hoge' else 1)

特定のカラムをカラムごと削除

dataframe.drop(["col1", "col2"], axis=1 )

特定のカラムを置換

dataframe.replace({"A":0, "B":1, "C":2})

for文を利用してすべてのデータを参照

for column_name, item in dataframe.iterrows():

データの追加

fare_mean_arr.append(data)

特定のカラムでnullを特定の値に置換

dataframe["col"].fillna(num)

特定のカラムにおける全データの最大値を取得

dataframe['col_name'].max()

特定のカラムにおける全データの平均値を取得

dataframe['col_name'].mean()

特定のカラムにおける全データの中央値を取得

dataframe['col_name'].median()

各カラムにnullが含まれているか

含まれていれば true なければ false が帰ってくる
dataframe.isnull().any()

各カラムに入っているデータ型の一覧を取得

dataframe.dtypes

データ分布の確認

dataframe['col'].hist()

特定のカラムを正規表現で置換

例は数値を削除する時
train['col'] = train['col'].replace('[0-9]*','',regex=True)

scikit-learn の学習メソッド

from sklearn import {classifier}
でclassifierのメソッドが呼べるようになります。
二分木やsvmなどいろいろあります。
今回は二分木を使いましたのでそちらで説明します。

二分木の分類機を作る

clf = tree.DecisionTreeClassifier(max_depth=3)

分類機で学習する

clf.fit(train_data, answers)

学習した分類機で分類を実行する

predict = clf.predict(data)

まとめ

今後も新しくメソッドを使うたびにまとめていこうと思いますが、
これだけ使えればとりあえず簡単な分類はできると思います。

5
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4