中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
我用數(shù)據(jù)告訴你,家長(zhǎng)學(xué)歷對(duì)孩子成績(jī)的影響有多大?

知識(shí)不僅能改變自己的命運(yùn),還能改變后代的命運(yùn)。

看了今天的數(shù)據(jù)分析,我相信你會(huì)更加清晰的明確這點(diǎn)。

所以說(shuō),國(guó)家在貧困地區(qū)優(yōu)先發(fā)展教育的政策是有非常有戰(zhàn)略意義的。教育脫貧,才能實(shí)現(xiàn)一個(gè)家族、一個(gè)地區(qū)的真正脫貧。

這份數(shù)據(jù)比較簡(jiǎn)單,它來(lái)源于美國(guó)一份學(xué)生成績(jī)單,包括性別、家長(zhǎng)學(xué)歷、是否備考、午餐計(jì)劃、分?jǐn)?shù)等,意在通過(guò)這些記錄這些因素對(duì)學(xué)生成績(jī)的影響。

今天的數(shù)據(jù)分析的工具依然是Python。

數(shù)據(jù)準(zhǔn)備

1、數(shù)據(jù)概覽

import numpy as npimport pandas as pdimport matplotlib.pyplot as pltfrom pyecharts import Bar,WordCloud,Pie,Linedf=pd.read_csv(r'C:\Users\Administrator\Desktop\StudentsPerformance.csv')df.head()

這個(gè)是數(shù)據(jù)的字段,前面我已經(jīng)說(shuō)過(guò)了,很簡(jiǎn)單。

import numpy as npimport pandas as pdimport matplotlib.pyplot as pltfrom pyecharts import Bar,WordCloud,Pie,Linedf=pd.read_csv(r'C:\Users\Administrator\Desktop\StudentsPerformance.csv')df.info()

數(shù)據(jù)類(lèi)型也不多,就兩個(gè),從圖上可以看到,這份數(shù)據(jù)很干凈,不需要進(jìn)行數(shù)據(jù)清洗。那我們就直接開(kāi)始分析吧。

數(shù)據(jù)分析

1、各科學(xué)生成績(jī)分布箱式圖

import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsfrom pyecharts import Bar,WordCloud,Pie,Linedf=pd.read_csv(r'C:\Users\Administrator\Desktop\StudentsPerformance.csv')
plt.rcParams['font.sans-serif']=['SimHei']y1=df['math score']y2=df['reading score']y3=df['writing score']x=[y1,y2,y3]plt.figure(figsize=(10,5))labels=['math score','reading score','writing score']plt.boxplot(x,labels=labels,vert=True)plt.title('各科目成績(jī)分布箱式圖',loc='left',size=15)
plt.xlabel('科目',size=15)plt.ylabel('分?jǐn)?shù)',size=15)plt.xticks(size=15)plt.yticks(size=15)#plt.yticks([]) 可以去掉y軸plt.grid(False)sns.despine(left=False )#去掉上面和右邊邊框plt.show();

在數(shù)據(jù)分析中,箱式圖是用的比較多的,特別是看分布的時(shí)候,非常實(shí)用,中間的矩形就是上四分位和下四分位,代表大部分?jǐn)?shù)據(jù)集中在這里,下面超過(guò)箱式圖的代表是異常值,也就是特別低的數(shù)據(jù)。

從圖片看出,各科成績(jī)的集中分?jǐn)?shù)段都是差不多的,都在60到80之間,但是數(shù)學(xué)成績(jī)的異常值更多,說(shuō)明數(shù)學(xué)是最難的。

2、學(xué)生整體成績(jī)分組情況

import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsfrom pyecharts import Bar,WordCloud,Pie,Line%matplotlib inline%config InlineBackend.figure_format = 'svg'df=pd.read_csv(r'C:\Users\Administrator\Desktop\StudentsPerformance.csv')y1=df['math score']y2=df['reading score']y3=df['writing score']df['總分']= y1 + y2 + y3
def GetGrade(總分): if ( 總分 >=270 ): return '優(yōu)秀' if ( 總分 >=240): return '良好' if ( 總分 >=180): return '及格' else: return '不及格'
df['等級(jí)'] = df.apply(lambda x :GetGrade(x['總分']), axis=1)
plt.rcParams['font.sans-serif']=['SimHei']plt.figure(figsize=(10,5))sns.countplot(x="等級(jí)",data=df, order=['優(yōu)秀','良好','及格','不及格'],palette="muted")plt.title('學(xué)生成績(jī)分組情況分析',loc='left',size=15)plt.xlabel('成績(jī)分組情況',size=15)plt.ylabel('人數(shù)',size=15)plt.grid(False)sns.despine(left=False )#去掉上面和右邊邊框plt.show()

這份圖是學(xué)生三科匯總分?jǐn)?shù)的分層情況,我把總分在270分以上的,歸為優(yōu)秀;240以上的,歸為良好;180以上的歸為及格;其余則為不及格。分組的代碼已經(jīng)在上面的代碼塊中寫(xiě)出來(lái)了。

但是上面這兩個(gè)圖還只是學(xué)生的成績(jī)情況,并不能看出成績(jī)的影響因素。

下面開(kāi)始,我將特意從家長(zhǎng)學(xué)歷的角度分析對(duì)孩子成績(jī)的影響。

3、父母學(xué)歷對(duì)子女成績(jī)影響1--考試分?jǐn)?shù)

import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsfrom pyecharts import Bar,WordCloud,Pie,Line%matplotlib inline%config InlineBackend.figure_format = 'svg'
df=pd.read_csv(r'C:\Users\Administrator\Desktop\StudentsPerformance.csv')y1=df['math score']y2=df['reading score']y3=df['writing score']df['總分']= y1 + y2 + y3
plt.figure(figsize=(10,5))sns.violinplot(x="parental level of education",y="總分",data=df,palette="Set3");
plt.title('父母學(xué)歷對(duì)子女成績(jī)影響1--考試分?jǐn)?shù)',loc='left',size=15)plt.xlabel('父母學(xué)歷',size=15)plt.ylabel('分?jǐn)?shù)',size=15)plt.xticks(size=12)plt.yticks(size=12)#plt.yticks([]) 可以去掉y軸plt.grid(False)sns.despine(left=False )#去掉上面和右邊邊框plt.show();

這個(gè)圖是小提琴圖,類(lèi)似于箱式圖,看法也差不多,尾巴越長(zhǎng),說(shuō)明低分越多。

從圖可以看出,高中未畢業(yè)(some high school)的家長(zhǎng)子女低分最多;其次是高中家長(zhǎng)(high school);然后是大學(xué)未畢業(yè)家長(zhǎng)(some college);然后是大專(zhuān)家長(zhǎng)(associate's degree);接下來(lái)是大學(xué)生家長(zhǎng)(bachelor's degree);低分最少的家長(zhǎng)是碩士家長(zhǎng)(master's degree)。

4、父母學(xué)歷對(duì)子女成績(jī)影響2--合格人數(shù)

import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsfrom pyecharts import Bar,WordCloud,Pie,Line%matplotlib inline%config InlineBackend.figure_format = 'svg'df=pd.read_csv(r'C:\Users\Administrator\Desktop\StudentsPerformance.csv')
#算總分y1=df['math score']y2=df['reading score']y3=df['writing score']df['總分']= y1 + y2 + y3
#計(jì)算合格或者不合格情況passmark =180df['考試合格'] = np.where(df['總分']<passmark, 'N', 'Y')df['考試合格'].value_counts()
plt.figure(figsize=(12,6))p= sns.countplot(x='parental level of education', data = df, hue='考試合格', palette='bright')_ = plt.setp(p.get_xticklabels(), rotation=0)
plt.title('父母學(xué)歷對(duì)子女成績(jī)影響2--合格人數(shù)',loc='left',size=15)plt.xlabel('父母學(xué)歷',size=15)plt.ylabel('考試合格或不合格人數(shù)',size=15)plt.xticks(size=12)plt.yticks(size=12)#plt.yticks([]) 可以去掉y軸plt.grid(False)sns.despine(left=False )#去掉上面和右邊邊框plt.show();

這個(gè)圖知道做出來(lái)后,我才發(fā)現(xiàn)其實(shí)不太容易看出父母學(xué)歷對(duì)子女成績(jī)的影響,但既然做出來(lái)了,也就先放到這,當(dāng)做練手了。

由圖可知,無(wú)論國(guó)內(nèi)還是國(guó)外,其實(shí)高學(xué)歷人群還是少數(shù),你看美國(guó),家長(zhǎng)是碩士學(xué)位的也是最少的。

5、父母學(xué)歷對(duì)子女成績(jī)影響3--及格率

import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsfrom pyecharts import Bar,WordCloud,Pie,Line%matplotlib inline%config InlineBackend.figure_format = 'svg'
df=pd.read_csv(r'C:\Users\Administrator\Desktop\StudentsPerformance.csv')y1=df['math score']y2=df['reading score']y3=df['writing score']df['總分']= y1 + y2 + y3
passmark =180df['考試合格'] = np.where(df['總分']<passmark, 'N', 'Y')df1=df.pivot_table('考試合格',index='parental level of education',aggfunc='count').reset_index()df2=df[df['考試合格']=='Y']df2=df2.pivot_table('考試合格',index='parental level of education',aggfunc='count').reset_index()df3=pd.merge(df1,df2,on='parental level of education')df3['合格率']=df3['考試合格_y']/df3['考試合格_x']
plt.rcParams['font.sans-serif']=['SimHei']x=df3['parental level of education']y=round(df3['合格率'],2)
plt.figure(figsize=(12,6))plt.bar(x,y,width=0.5,align='center')plt.title('父母學(xué)歷對(duì)子女成績(jī)影響3--合格率',loc='left',size=15)
for a,b in zip(x,y): plt.text(a,b,b,ha='center',va='bottom',fontsize=12)#顯示額度標(biāo)簽
plt.xlabel('父母學(xué)歷',size=15)plt.ylabel('合格率',size=15)plt.xticks(x,size=12)plt.yticks(size=15)#plt.yticks([]) 可以去掉y軸plt.grid(False)sns.despine(left=False )#去掉上面和右邊邊框plt.show()

這個(gè)是不同學(xué)歷家長(zhǎng)的子女成績(jī)合格率情況,一目了然就能看出來(lái),學(xué)歷越高的家長(zhǎng),子女成績(jī)合格率越高。

雖然圖是做出來(lái)了,但是代碼略顯繁瑣,大家可以批判閱讀,先通過(guò)這種方法做出來(lái),再想其他更簡(jiǎn)單的方法。

寫(xiě)在后面

有心的朋友應(yīng)該看出,今天的數(shù)據(jù)分析并不難,但是代碼中還是有不少新東西可以一起操作的。

其中包括小提琴圖的畫(huà)法,簡(jiǎn)單自定義函數(shù)的用法,還是對(duì)數(shù)據(jù)進(jìn)行判斷貼標(biāo)簽的方法。這些東西只要學(xué)會(huì)了,就放之四海而皆準(zhǔn),以后碰到類(lèi)似情況都可以用起來(lái)。

數(shù)據(jù)分析就是這樣的,自己要多練習(xí),也要多看看別人的東西,看人家是怎么實(shí)現(xiàn)的,這樣可以多一些分析思路解決問(wèn)題。

好了,今天的數(shù)據(jù)分析分享就到這里,我們下周可能繼續(xù)。

因?yàn)檫@是我連續(xù)第10周分享了,Python的基本分析方法、分析工具差不多都有涉及了,更深入的東西需要花的時(shí)間比較多,一周的業(yè)務(wù)時(shí)間估計(jì)不夠。

再加上自己目前剛接手?jǐn)?shù)據(jù)分析的工作不久,工作量也比較大,需要花更多時(shí)間放工作上,也不敢熬太多夜,所以數(shù)據(jù)分析分享可能不會(huì)這么頻繁了。

么么噠。

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶(hù)發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
Seaborn快速入門(mén)
Python數(shù)據(jù)可視化:用Seaborn繪制高端玩家版散點(diǎn)圖
使用 Python 進(jìn)行數(shù)據(jù)可視化之Seaborn
來(lái)自kaggle最佳數(shù)據(jù)分析實(shí)踐
Python 數(shù)據(jù)可視化,常用看這一篇就夠了
Python可視化與basemap數(shù)據(jù)地圖系列1
更多類(lèi)似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服