Python數(shù)據(jù)分析與處理(一)--北京高考分?jǐn)?shù)線統(tǒng)計(jì)分析
前言:
為了幫助廣大考生和家長(zhǎng)了解高考?xì)v年的錄取情況,很多網(wǎng)站都匯總了各省市的錄取控制分?jǐn)?shù)線,為廣大考生填報(bào)志愿提供參考。因受多種因素影響,每年的分?jǐn)?shù)線或多或少會(huì)有一些變動(dòng)。采集北京2006-2019年的信息。使用Python的Pandas庫(kù)完成以下數(shù)據(jù)分析。
1.1 數(shù)據(jù)爬取
包含三部分內(nèi)容:從哪里爬取,如何爬取,爬取的結(jié)果
代碼:
import pandas as pd
import numpy as np
data=pd.read_excel("scores.xlsx",header=1)
print(data)
運(yùn)行結(jié)果:

分析:我是讀取的本地的數(shù)據(jù)文件進(jìn)行的數(shù)據(jù)分析。
有興趣的話可以從網(wǎng)站上面下載相關(guān)的數(shù)據(jù)或者是自己使用爬蟲(chóng)爬取相關(guān)的數(shù)據(jù)源。進(jìn)行數(shù)據(jù)分析
這個(gè)數(shù)據(jù)的分析部分我主要是采用的是Pandas numpy做數(shù)據(jù)的預(yù)處理。
和matplotlib進(jìn)行數(shù)據(jù)的可視化展示。
1.2 最高分最低分統(tǒng)計(jì)
mindata= data.groupby(['文科','理科'], as_index=False).min(axis=1) maxdata= data.groupby(['文科','理科'], as_index=False).max(axis=2) print(data.min()) print(data.max())

進(jìn)行數(shù)據(jù)的處理,最高分最低分統(tǒng)計(jì),因?yàn)橛袃蓚€(gè)不同的年份的成績(jī),并且分了文科和理科所以就有2個(gè)文科2個(gè)理科
- 我們使用
groupby按照文理科進(jìn)行分組 - 然后使用
max()和min()求最大值和最小值‘ - 經(jīng)過(guò)分析處理可以看到打印出來(lái)的最大值和最小值
1.3 一本二本理科差值統(tǒng)計(jì)
代碼:
s1math=data["一本分?jǐn)?shù)線","理科"] print(s1math) print(s1math[0]-s1math[2]) s1c=data["一本分?jǐn)?shù)線","文科"] print(s1c[0]-s1c[2]) s2math=data["二本分?jǐn)?shù)線","理科"] print(s2math[0]-s2math[2]) s2c=data["二本分?jǐn)?shù)線","文科"] print(s2math[0]-s2math[2])
運(yùn)行結(jié)果:

注意:
首先我們?nèi)〕鱿鄳?yīng)的文理科一本以及二本的成績(jī),然后再進(jìn)行相關(guān)的極差的計(jì)算就是使用前一個(gè)數(shù)減去后面的一個(gè)數(shù)就OK。
print(s1math[0]-s1math[2])
1.4 2006—2019年近14年每科分?jǐn)?shù)線的平均值統(tǒng)計(jì)
代碼:
# 2006—2019年近14年每科分?jǐn)?shù)線的平均值統(tǒng)計(jì) data1=data[data['Unnamed: 0'].between(2006, 2014, inclusive=True)].groupby(['Unnamed: 0']).mean() print(data1)
運(yùn)行結(jié)果:

首先是進(jìn)行數(shù)據(jù)的提取,然后進(jìn)行平均值的求取。在這里我算的麻煩了,因?yàn)楸緛?lái)就是一個(gè)年份對(duì)應(yīng)的是一個(gè)成績(jī)。不是一對(duì)多的關(guān)系,所以下面的方法要更好一些。
也可以使用mean方法進(jìn)行相關(guān)的平均值求取。

是一個(gè)成績(jī)。不是一對(duì)多的關(guān)系,所以下面的方法要更好一些。
也可以使用mean方法進(jìn)行相關(guān)的平均值求取。
到此這篇關(guān)于Python數(shù)據(jù)分析與處理北京高考分?jǐn)?shù)線統(tǒng)計(jì)分析的文章就介紹到這了,更多相關(guān)Python數(shù)據(jù)分析與處理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 精選39道Python數(shù)據(jù)分析面試題提早備戰(zhàn)金三銀四
- Python數(shù)據(jù)分析從入門(mén)到進(jìn)階之分類(lèi)算法全面教程
- 科學(xué)計(jì)算與數(shù)據(jù)分析利器Python數(shù)據(jù)分析庫(kù)Scipy使用詳解
- Python數(shù)據(jù)分析numpy文本數(shù)據(jù)讀取索引切片實(shí)例詳解
- Python數(shù)據(jù)分析numpy的Nan和Inf使用注意點(diǎn)詳解
- Python數(shù)據(jù)分析pandas之布爾索引使用詳解
- Python Pingouin數(shù)據(jù)統(tǒng)計(jì)分析技術(shù)探索
相關(guān)文章
Win8.1下安裝Python3.6提示0x80240017錯(cuò)誤的解決方法
這篇文章主要為大家詳細(xì)介紹了Win8.1下安裝Python3.6提示0x80240017錯(cuò)誤的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-07-07
python使用Thread的setDaemon啟動(dòng)后臺(tái)線程教程
這篇文章主要介紹了python使用Thread的setDaemon啟動(dòng)后臺(tái)線程教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-04-04
Python進(jìn)程Multiprocessing模塊原理解析
這篇文章主要介紹了Python進(jìn)程Multiprocessing模塊原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-02-02
python groupby 函數(shù) as_index詳解
今天小編就為大家分享一篇python groupby 函數(shù) as_index詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12
Python實(shí)現(xiàn)將視頻按照時(shí)間維度剪切
這篇文章主要為大家詳細(xì)介紹了如何利用Python實(shí)現(xiàn)將視頻按照時(shí)間維度進(jìn)行剪切,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解一下2022-12-12
python動(dòng)態(tài)加載技術(shù)解析
這篇文章主要介紹了python動(dòng)態(tài)加載技術(shù)解析,說(shuō)簡(jiǎn)單點(diǎn)就是,如果開(kāi)發(fā)者發(fā)現(xiàn)自己的代碼有bug,那么他可以在不關(guān)閉原來(lái)代碼的基礎(chǔ)之上,動(dòng)態(tài)替換模塊替換方法一般用reload來(lái)完成,需要的朋友可以參考下2023-07-07

