戦コンからDSへの転身なるか?

Dev, DS的な勉強と実践の継続の記録

Kaggle / Titanic - Machine Learning from Disaster / 写経 / 欠損値補完の一部まで

環境

Jupyter Notebook / Local

やったこと

データの読み込み

df_train = pd.read_csv('train.csv')
df_test = pd.read_csv('test.csv')

df_train.shape, df_test.shape
df_train.head()
df_test.head()

基本統計量の確認

df_train.describe()
df_train.describe(include='all')
df_train.describe(exclude='number')

df_train.hist(figsize=(12, 12)) #ヒストグラム表示

※df_testも同様に

欠損値確認

df_train.isnull().sum()
df_test.isnull().sum()

# 欠損値の有無の確認
pd.isnull(df_train)
pd.isnull(df_test)

# 欠損値レコード抽出
df_train[df_train.isnull().any(axis=1)]
df_test[df_train.isnull().any(axis=1)]

欠損値補完('Age'を例に)

df_train['Age'].fillna(df_train['Age'].mean(), inplace=True)
df_test['Age'].fillna(df_test['Age'].mean(), inplace=True)

所感

myafu-python.com

こちらの写経がベース。 Age, Fare等の欠損値については、平均値(mean())で補完。ここは中央値で保管するなどでモデルの精度が変わってくると思われ。