Pythonによる探索的解析(EDA)02
7196 ワード
Python探索性分析EDA
前の記事では、ステップナビゲーションの方法について説明します.
次に、分析例データとしてパイライン符号化を用いて補足説明する.
「caggle」(Kgloble)について説明します.
ケゲルは海外データコンテストサイトです.
キャッシュ・データには、多くの業界データ、問題の定義、低データの取得、および異なるデータのアップロード/ダウンロードの実験例の利点があり、比較分析が可能です.
データ分析チュートリアルの例として、一般的なタイタニックTitanic生存者予測例を示します.
1.データ計画
タイタニック号は1912年の北大西洋航行中に氷河に沈んだ客船泊である.
https://www.youtube.com/watch?v=PboGLRAEwFU&t=974s
[模擬タイタニック号事故]
ケゲル氏が提起した問題は、沈没したタイタニック号の生存者の性別、家庭、客室の等級情報に基づいて、生存率要求の特徴モデリング分析を模索することだ.
[解析目標]
タイタニック号の客船顧客データの特徴モデリングにより、タイタニック号の生存率を予測分析した.
2.データ収集
データ#データ#
https://www.kaggle.com/c/titanic/data
データをダウンロードすると、zipファイルにcsvファイルをダウンロードできます.
trainデータセット実験用のシミュレーションデータ(総データの60〜70%)
testデータセットはtrainデータセットをモデリングする方法で実際に検証されたデータ(全データの30-40%)である.
train,testデータが2種類に分かれている理由は.これは、列車のデータを分析し、新しいテストデータを使用して検証する必要があるためですが、既存のデータではなく、他のデータに対して高精度/低精度の信頼性検査を行うことができます.
3.データ構造の理解
[入庫とデータ]
-変数の表示PassengerId:乗客一人当たりの固有番号 Survived:生存の有無(従属変数)
0=死亡、1=生存 Pclass:客室等級-乗客の社会的・経済的地位
1st = Upper, 2nd = Middle, 3rd = Lower Name:名称 Sex:性別 Age:年齢 SibSp:添乗員のSibling(兄弟姉妹)とSpouse(配偶者)の数 パーカー:添乗員の親Child(子)の数 Ticket:チケット固有番号 Fare:運賃 Cabin:客室番号 Embarked:乗船港
C = Cherbourg, Q = Queenstown, S = Southampton
カテゴリ-Sex(性別)、Pclass(客室等級)、Embarked(出発点)、SibSp(兄弟姉妹、配偶者)、Parch(親、子供)
連続エージェント(年齢)、Fare(料金)
4.データ解析
[データ解析]訓練資料サンプル数:891(count=891) 訓練資料サンプル内生存率:38.4%(平均的Survived=0.3838) 訓練資料男性数:577名(topのsex=男性、freqのsex=577) 訓練資料が一番多い乗船地:S,644名(topのEmbarked=S,freqのEmbarked=644) 5.データプリプロセッシング
6.データの基本分析
データフィールドによる分析
性別、客室等級、兄弟姉妹/配偶者、両親/子供要因分析
[性別]
0 female 0.742038
1 male 0.188908
[客室等級]
0 1 0.629630
1 2 0.472826
2 3 0.242363
[乗船した兄弟姉妹と配偶者数(SibSp)による生存率]
1 1 0.535885
2 2 0.464286
0 0 0.345395
3 3 0.250000
4 4 0.166667
5 5 0.000000
6 8 0.000000
[乗船した親と子供の数による生存率]
3 3 0.600000
1 1 0.550847
2 2 0.500000
0 0 0.343658
5 5 0.200000
4 4 0.000000
6 6 0.000000
7.仮定の作成
8.データ仮説分析
9.結果分析
前の記事では、ステップナビゲーションの方法について説明します.
次に、分析例データとしてパイライン符号化を用いて補足説明する.
(3)分析例
「caggle」(Kgloble)について説明します.
ケゲルは海外データコンテストサイトです.
キャッシュ・データには、多くの業界データ、問題の定義、低データの取得、および異なるデータのアップロード/ダウンロードの実験例の利点があり、比較分析が可能です.
データ分析チュートリアルの例として、一般的なタイタニックTitanic生存者予測例を示します.
1.データ計画
タイタニック号は1912年の北大西洋航行中に氷河に沈んだ客船泊である.
https://www.youtube.com/watch?v=PboGLRAEwFU&t=974s
[模擬タイタニック号事故]
ケゲル氏が提起した問題は、沈没したタイタニック号の生存者の性別、家庭、客室の等級情報に基づいて、生存率要求の特徴モデリング分析を模索することだ.
[解析目標]
タイタニック号の客船顧客データの特徴モデリングにより、タイタニック号の生存率を予測分析した.
2.データ収集
データ#データ#
https://www.kaggle.com/c/titanic/data
データをダウンロードすると、zipファイルにcsvファイルをダウンロードできます.
trainデータセット実験用のシミュレーションデータ(総データの60〜70%)
testデータセットはtrainデータセットをモデリングする方法で実際に検証されたデータ(全データの30-40%)である.
train,testデータが2種類に分かれている理由は.これは、列車のデータを分析し、新しいテストデータを使用して検証する必要があるためですが、既存のデータではなく、他のデータに対して高精度/低精度の信頼性検査を行うことができます.
3.データ構造の理解
[入庫とデータ]
# 라이브러리
import pandas as pd
import numpy as np
import random as rnd
# 시각화
import seaborn as sns
import matplotlib.pyplot as plt
%matplotlib inline
# 오류처리 무시
import warnings
warnings.filterwarnings(action='ignore')
train_df=pd.read_csv("train.csv")
test_df=pd.read_csv("test.csv")
# 모델 적용의 일관성을 위해,
# train과 test를 합한 combine 데이터 셋도 지정
combine=[train_df,test_df]
[データ変数をチェック]-変数の表示
print(train_df.columns.values)
['PassengerId' 'Survived' 'Pclass' 'Name' 'Sex' 'Age' 'SibSp' 'Parch'
'Ticket' 'Fare' 'Cabin' 'Embarked']
-変数(フィールド名)の説明0=死亡、1=生存
1st = Upper, 2nd = Middle, 3rd = Lower
C = Cherbourg, Q = Queenstown, S = Southampton
#데이터 미리 보기
train_df.head(5)
#데이터 미리 보기
train_df.tail(5)
# 훈련 자료 정보
train_df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 891 entries, 0 to 890
Data columns (total 12 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 PassengerId 891 non-null int64
1 Survived 891 non-null int64
2 Pclass 891 non-null int64
3 Name 891 non-null object
4 Sex 891 non-null object
5 Age 714 non-null float64
6 SibSp 891 non-null int64
7 Parch 891 non-null int64
8 Ticket 891 non-null object
9 Fare 891 non-null float64
10 Cabin 204 non-null object
11 Embarked 889 non-null object
dtypes: float64(2), int64(5), object(5)
memory usage: 83.7+ KB
# 테스트 자료 정보
test_df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 418 entries, 0 to 417
Data columns (total 11 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 PassengerId 418 non-null int64
1 Pclass 418 non-null int64
2 Name 418 non-null object
3 Sex 418 non-null object
4 Age 332 non-null float64
5 SibSp 418 non-null int64
6 Parch 418 non-null int64
7 Ticket 418 non-null object
8 Fare 417 non-null float64
9 Cabin 91 non-null object
10 Embarked 418 non-null object
dtypes: float64(2), int64(4), object(5)
memory usage: 36.0+ KB
ユニーク-乗客番号、名前、およびTicket(チケット番号)カテゴリ-Sex(性別)、Pclass(客室等級)、Embarked(出発点)、SibSp(兄弟姉妹、配偶者)、Parch(親、子供)
連続エージェント(年齢)、Fare(料金)
4.データ解析
[データ解析]
# 훈련 자료 int, float 변수 통계치
train_df.describe()
# 훈련 자료 object 변수 통계치
train_df.describe(include=['O'])
6.データの基本分析
データフィールドによる分析
性別、客室等級、兄弟姉妹/配偶者、両親/子供要因分析
[性別]
train_df[["Sex", "Survived"]].groupby(['Sex'], as_index=False).mean().sort_values(by='Survived', ascending=False)
Sex Survived0 female 0.742038
1 male 0.188908
[客室等級]
#groupby에 as_index를 False로 하면 Pclass를 index로 사용하지 않음
# ascending : 오름차순
# as_index를 True로 하면 Pclass를 index로 사용
train_df[['Pclass', 'Survived']].groupby(['Pclass'], as_index=False).mean().sort_values(by='Survived', ascending=False)
Pclass Survived0 1 0.629630
1 2 0.472826
2 3 0.242363
[乗船した兄弟姉妹と配偶者数(SibSp)による生存率]
train_df[["SibSp", "Survived"]].groupby(['SibSp'], as_index=False).mean().sort_values(by='Survived', ascending=False)
SibSp Survived1 1 0.535885
2 2 0.464286
0 0 0.345395
3 3 0.250000
4 4 0.166667
5 5 0.000000
6 8 0.000000
[乗船した親と子供の数による生存率]
train_df[["Parch", "Survived"]].groupby(['Parch'], as_index=False).mean().sort_values(by='Survived', ascending=False)
Parch Survived3 3 0.600000
1 1 0.550847
2 2 0.500000
0 0 0.343658
5 5 0.200000
4 4 0.000000
6 6 0.000000
7.仮定の作成
8.データ仮説分析
9.結果分析
Reference
この問題について(Pythonによる探索的解析(EDA)02), 我々は、より多くの情報をここで見つけました https://velog.io/@raffier/파이썬을-이용한-탐색적-분석-EDAExploratory-Data-Analysis-02テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol