現役エンジニアの技術ブログ

東北でエンジニアをしている26歳です。C/Python,機械学習,趣味はQiitaの記事漁り,アプリ開発挑戦中

【Kaggle】Titanic-2 データ整形~提出

こんばんわ!

 

だいぶ時間が空いてしまいましたが、Kaggleの記事を書いて行こうと思います。

前の記事:

comet-tec.hatenablog.com

 

 

前回はcsvの読み込み~カラムの抽出まで行ったので、今回はデータの整形~提出まで行います。

 

データの整形部分

>|python|

data_X["Sex"]=le.fit_transform(data_X["Sex"])
data_X["Age"]=data_X["Age"].fillna(value=data_X["Age"].median())
data_X["Fare"]=data_X["Fare"].fillna(value=data_X["Fare"].median())
data_X["Embarked"]= data_X["Embarked"].fillna('S')
data_X.loc[data_X["Embarked"] == 'S', "Embarked"] = 0
data_X.loc[data_X["Embarked"] == 'C', "Embarked"] = 1
data_X.loc[data_X["Embarked"] == 'Q', "Embarked"] = 2

#Test Data fill 
data_y["Sex"]=le.fit_transform(data_y["Sex"])
data_y["Age"]=data_y["Age"].fillna(value=data_y["Age"].median())
data_y["Fare"]=data_y["Fare"].fillna(value=data_y["Fare"].median())
data_y.loc[data_y["Embarked"] == 'S', "Embarked"] = 0
data_y.loc[data_y["Embarked"] == 'C', "Embarked"] = 1
data_y.loc[data_y["Embarked"] == 'Q', "Embarked"] = 2
||<

整形内容は"Sex"のデータを"male"→0,"female"→1に変換しています。

今回は、線形回帰分析で生存率を求めるので、データ型を質的データから量的データに変更する必要があります。

次に"Age"と"Fara"ので空白データを平均値で埋めます。

最後に"Embarked"を量的データに変換しました。

 

次に、モデル作成

> |python|

input_cols=['Sex', 'Age', 'Pclass','SibSp', 'Parch', 'Fare','Embarked']
output_cols=['Survived']
X=data_X[input_cols]
y=data_X[output_cols]

X1=data_y[input_cols]

clf.fit(X,y)
pred=clf.predict(X1)

||<

必要なカラムを抜き出し、モデルを作成しました。

 

最後に、予測データを整形し、提出します。

 

f:id:Comet_tec:20210927194032p:plain

Score 0 ってまじかよ(T_T)

 

明日は高精度化に挑戦します!

 

今日はここまで!

ご購読ありがとうございました!