我的泰坦尼克数据分析
生活随笔
收集整理的這篇文章主要介紹了
我的泰坦尼克数据分析
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
直接上代碼
import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns import scipy.stats as statsplt.style.use("ggplot")df = pd.read_csv("Titanic.csv") df.shape df.info() df.head()df.keys()df['Survived'].value_counts() ################################### ''' pandas可以使用crosstab 直接返回一個(gè)table對(duì)象,并且直接使用scipy的函數(shù),計(jì)算出卡方值。 '''pd.crosstab(df['Sex'], df['Survived'])pd.crosstab(df['Pclass'], df['Survived']) stats.chi2_contingency([[80, 136], [97, 87], [372, 119]])table = pd.crosstab(df['Pclass'], df['Survived']) table stats.chi2_contingency(table) ''' 嘗試使用pivot—table '''''' pivot_table會(huì)默認(rèn)使用index 作為分行,對(duì)所有的變量進(jìn)行分行統(tǒng)計(jì) ''' # df.pivot_table(index=df['Sex'])# 只統(tǒng)計(jì)存活df.pivot_table(index=df['Sex'])['Survived'] df.pivot_table(index=df['Sex'],aggfunc=sum)['Survived']df.pivot_table(index=df['Sex'], aggfunc=np.mean)['Survived'] df.pivot_table(index=df['Sex'], aggfunc=np.sum)['Survived']df.pivot_table(index=['Sex', 'Pclass'])['Survived'] ''' 使用groupby '''df.groupby(df['Sex'])['Survived'].value_counts()#使用 unstack 可以實(shí)現(xiàn)和 crosstab 同樣的效果 df.groupby(df['Sex'])['Survived'].value_counts().unstack()df.groupby([df['Sex'], df['Pclass']])['Survived'].value_counts().unstack() ######################## ######## 開(kāi)始作圖 ########################sns.countplot(x='Sex', hue='Survived', data=df) sns.countplot(x='Pclass', hue='Survived', data=df) df['Survived'].value_counts(sort=True).plot(kind="pie", labels=['dead', 'survived'], autopct='%1.2f%%') df.groupby(df['Sex'])['Survived'].value_counts().plot.bar() ####使用crosstab的對(duì)象作圖 pd.crosstab(df['Sex'], df['Survived']).plot(kind='bar') ################################## ############# 最簡(jiǎn)單的做堆積條形圖的方法,就是使用table對(duì)象, ################################## table table.plot(kind = 'bar') table = pd.crosstab(index=df['Sex'], columns=df['Survived']) tabletable.plot(kind = 'bar')table.plot(kind='bar', stacked = True) ################################### ############## 使用sns作圖 ################################### sns.countplot(x='Sex', hue='Survived', data=df)sns.countplot(x='Pclass', hue='Survived', data=df)#如果想使用多個(gè)分類(lèi), 就需要使用catplot ##############年齡作圖df['Age'].plot(kind='kde') df[df['Survived']==0]['Age'].plot(kind='kde') df[df['Survived']==1]['Age'].plot(kind='kde') sns.kdeplot(data=df['Age'])sns.kdeplot(data= df[df['Survived']== 0]['Age'], shade=True ) sns.kdeplot(data= df[df['Survived']== 1]['Age'], shade=True )總結(jié)
以上是生活随笔為你收集整理的我的泰坦尼克数据分析的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: pandas 处理时间戳数据
- 下一篇: pandas isnull 函数