一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

AQI分析與預(yù)測-1

汽車電子技術(shù) ? 來源:Python數(shù)據(jù)分析之旅 ? 作者: cauwfq ? 2023-02-23 16:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

圖片

一.項(xiàng)目背景

AQI(air Quality Index)指空氣質(zhì)量指數(shù),用來衡量空氣清潔或者污染程度。值
越小,表示空氣質(zhì)量越好。近年來因?yàn)榄h(huán)境問題,空氣質(zhì)量越來越受到人們重視。

二.實(shí)現(xiàn)過程

1.數(shù)據(jù)加載
  1)讀取數(shù)據(jù)
  2)查看數(shù)據(jù)
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings


sns.set(style="darkgrid", font_scale=1.2)
plt.rcParams["font.family"] = "SimHei"
plt.rcParams["axes.unicode_minus"] = False
warnings.filterwarnings("ignore")


#讀取文件
data = pd.read_csv("data.csv")
#輸出數(shù)據(jù)形狀
print(data.shape)
#查看數(shù)據(jù)
data.head()

圖片

2.數(shù)據(jù)清洗
  1)缺失值處理
  2)異常值處理
  3)重復(fù)值處理
1)缺失值處理
   》》查看缺失值
   》》缺失值填充
#計(jì)算缺失值比例
t = data.isnull().sum()
#鏈接數(shù)據(jù)
t = pd.concat([t, t / len(data)], axis=1)
#設(shè)置列名稱
t.columns = ["缺失值數(shù)量", "缺失值比例"]
#顯示表格
display(t)

圖片

#計(jì)算降雨量偏度,偏度較小
print(data["Precipitation"].skew())
#繪制圖形
sns.distplot(data["Precipitation"].dropna())

圖片

#用中位數(shù)填充缺失值
data.fillna({"Precipitation": data["Precipitation"].median()}, inplace=True)
#計(jì)算缺失值
data.isnull().sum()

圖片

2)異常值處理
   》》查看異常值
   》》異常值處理
#查看數(shù)據(jù)分布情況
data.describe()

圖片

#繪制圖形
sns.distplot(data["GDP"])
#輸出GDP峰值,偏度較大
print(data["GDP"].skew())

圖片

#計(jì)算均值和標(biāo)準(zhǔn)差
mean, std = data["GDP"].mean(), data["GDP"].std()
#計(jì)算下限與上限
lower, upper = mean - 3 * std, mean + 3 * std
#均值
print("均值:", mean)
#標(biāo)準(zhǔn)差
print("標(biāo)準(zhǔn)差:", std)
#下限
print("下限:", lower)
#上限
print("上限:", upper)
#獲取在3倍標(biāo)準(zhǔn)差之外的數(shù)據(jù)。
data["GDP"][(data["GDP"] < lower) | (data["GDP"] > upper)]

圖片

#繪制箱線圖
sns.boxplot(data=data["GDP"])

圖片

#初始畫布
fig, ax = plt.subplots(1, 2)
#設(shè)置畫布大小
fig.set_size_inches(15, 5)
#繪制直方圖
sns.distplot(data["GDP"], ax=ax[0])
#繪制對數(shù)直方圖
sns.distplot(np.log(data["GDP"]), ax=ax[1])

圖片

3)重復(fù)值處理
   》》查看重復(fù)值
   》》刪除重復(fù)值
#發(fā)現(xiàn)重復(fù)值。
print(data.duplicated().sum())
#查看哪些記錄出現(xiàn)了重復(fù)值。
data[data.duplicated(keep=False)]

圖片

#刪除重復(fù)值
data.drop_duplicates(inplace=True)
#統(tǒng)計(jì)重復(fù)值
data.duplicated().sum()

圖片

3.數(shù)據(jù)分析
  1)空氣質(zhì)量最好/最差的5個(gè)城市
  2)臨海城市是否空氣質(zhì)量優(yōu)于內(nèi)陸城市
  3)空氣質(zhì)量受那些因素影響
  4)關(guān)于空氣質(zhì)量驗(yàn)證
1)空氣質(zhì)量最好/最差的5個(gè)城市
   》》篩選數(shù)據(jù)
   》》按照AQI排序
   》》繪圖觀察
#空氣質(zhì)量最好的5個(gè)城市


#篩選數(shù)據(jù),按照AQI升序排列,
t = data[["City", "AQI"]].sort_values("AQI")
#篩選數(shù)據(jù)
t = t.iloc[:5]
#顯示數(shù)據(jù)
display(t)
#旋轉(zhuǎn)x軸標(biāo)簽
plt.xticks(rotation=30)
#繪制柱狀圖
sns.barplot(x="City", 
            y="AQI", 
            data=t)

圖片

我們發(fā)現(xiàn)空氣質(zhì)量最好的5個(gè)城市:
  1.韶關(guān)市
  2.南平市
  3.梅州市
  4.基隆市
  5.三明市
#空氣質(zhì)量最差的5個(gè)城市


#篩選數(shù)據(jù),按照AQI降序排列
t = data[["City", "AQI"]].sort_values("AQI", ascending=False)
#篩選前5條數(shù)據(jù)
t = t.iloc[:5]
#顯示數(shù)據(jù)
display(t)
#旋轉(zhuǎn)x軸標(biāo)簽
plt.xticks(rotation=45)
sns.barplot(x="City",
            y="AQI", 
            data=t)

圖片

我們發(fā)現(xiàn)空氣質(zhì)量最差的5個(gè)城市:
  1.北京市
  2.朝陽市
  3.保定市
  4.錦州市
  5.焦作市
對于AQI,對空氣質(zhì)量進(jìn)行等級劃分,劃分表轉(zhuǎn)如下

圖片

# 編寫函數(shù),將AQI轉(zhuǎn)換為對應(yīng)的等級。
def value_to_level(AQI):
    if AQI >= 0 and AQI <= 50:
        return "一級"
    elif AQI >= 51 and AQI <= 100:
        return "二級"
    elif AQI >= 101 and AQI <= 150:
        return "三級"
    elif AQI >= 151 and AQI <= 200:
        return "四級"
    elif AQI >= 201 and AQI <= 300:
        return "五級"
    else:
        return "六級"
#轉(zhuǎn)換等級
level = data["AQI"].apply(value_to_level)
#輸出統(tǒng)計(jì)
print(level.value_counts())
#繪制條形圖觀察數(shù)值
sns.countplot(x=level,
              order=["一級", "二級", "三級", "四級", "五級", "六級"])

圖片

2)臨海城市是否空氣質(zhì)量優(yōu)于內(nèi)陸城市
   》》數(shù)量統(tǒng)計(jì)
   》》分布統(tǒng)計(jì)
   》》統(tǒng)計(jì)分析
繪制全國城市空氣質(zhì)量指數(shù)分布圖


#繪制散點(diǎn)圖
sns.scatterplot(x="Longitude",
                y="Latitude", 
                hue="AQI",
                palette=plt.cm.RdYlGn_r, 
                data=data)

圖片

1)數(shù)量統(tǒng)計(jì)
我們統(tǒng)計(jì)下臨海城市與內(nèi)陸城市數(shù)量


#輸出統(tǒng)計(jì)值
print(data["Coastal"].value_counts())
#繪制直方圖
sns.countplot(x="Coastal", 
              data=data)

圖片

2)分布統(tǒng)計(jì)
我們觀察下臨海城市與內(nèi)陸城市散點(diǎn)分布


sns.stripplot(x="Coastal",
              y="AQI",
              data=data) 


結(jié)論:沿海城市空氣質(zhì)量普遍好于內(nèi)陸城市

圖片

3)對以上結(jié)論進(jìn)行統(tǒng)計(jì)分析
   》》參數(shù)檢驗(yàn)
   》》非參數(shù)檢驗(yàn)
參數(shù)檢驗(yàn)
  》》正態(tài)分布檢驗(yàn)
  》》方差齊性檢驗(yàn)
  》》兩獨(dú)立樣本t檢驗(yàn)
from scipy import stats


#分別獲取臨海與內(nèi)陸城市兩個(gè)樣本的AQI值。
coastal = data[data["Coastal"] == "是"]["AQI"]
inland = data[data["Coastal"] == "否"]["AQI"]
#初始畫布與坐標(biāo)系
fig, ax = plt.subplots(1, 2)
#設(shè)置畫布大小
fig.set_size_inches(15, 5)
#繪制兩個(gè)樣本的分布。
sns.distplot(coastal, ax=ax[0])
sns.distplot(inland, ax=ax[1])

圖片

1.正態(tài)分布檢驗(yàn)
  》》繪制數(shù)據(jù)分布圖
  》》繪制PP圖和QQ圖
  》》使用假設(shè)檢驗(yàn)
PP圖與QQ圖
PP圖(Probability-Probability plot)與QQ圖(Quantile-Quantile plot)本質(zhì)上基本是相同的。用于檢驗(yàn)樣本數(shù)據(jù)的分布是否符合某個(gè)分布(默認(rèn)為正態(tài)分布)。
PP圖:通過累積概率密度來檢測。
  x軸:根據(jù)傳遞的數(shù)據(jù)數(shù)量(n),計(jì)算x軸的繪制位置(x坐標(biāo)),值為(1/n+1, 2/n+1, …… n/n+1)。
  y軸:將樣本數(shù)據(jù)排序,然后進(jìn)行標(biāo)準(zhǔn)化(減均值除以標(biāo)準(zhǔn)差),計(jì)算樣本數(shù)據(jù)在理論分布下的cdf值(累積概率密度)。


QQ圖:通過分布百分比對應(yīng)的數(shù)值來檢測。
  x軸:根據(jù)傳遞的數(shù)據(jù)數(shù)量(n),計(jì)算值(1/n+1, 2/n+1, …… n/n+1)的值。然后對每個(gè)值,計(jì)算在理論分布下的ppf值(cdf的逆運(yùn)算,即根據(jù)累積概率密度求解對應(yīng)
的位置)。
  y軸:將數(shù)值排序,將每個(gè)數(shù)值標(biāo)準(zhǔn)化。
import statsmodels.api as sm


def plot_pp_qq(d):
    """
    繪制PP圖與QQ圖的函數(shù)。
    Parameters
    ----------
    d : array-like
    要繪制的數(shù)值。
    """
    #初始化坐標(biāo)系與畫布
    fig, ax = plt.subplots(1, 2)
    #設(shè)置尺寸大小
    fig.set_size_inches(15, 5)
    #標(biāo)準(zhǔn)化
    scale_data = (d - d.mean()) / d.std()
    #創(chuàng)建ProbPlot對象,用于繪制pp圖與qq圖
    #data:樣本數(shù)據(jù)。
    #dist:分布,默認(rèn)為正態(tài)分布。數(shù)據(jù)data會與該分布進(jìn)行對比
    p= sm.ProbPlot(data=scale_data, 
                   dist=stats.norm)
    #繪制pp圖
    p.ppplot(line="45",
             ax=ax[0])
    #設(shè)置名稱
    ax[0].set_title("PP圖")
    #繪制qq圖
    p.qqplot(line="45",
             ax=ax[1])
    #設(shè)置名稱
    ax[1].set_title("QQ圖")
    #顯示圖形
    plt.show()

#繪制沿海城市圖形
plot_pp_qq(coastal)

圖片

#繪制內(nèi)陸城市圖形
plot_pp_qq(inland)

圖片

進(jìn)行是否正態(tài)分布檢驗(yàn)?
#原假設(shè):觀測值來自于正態(tài)分布的總體。
#備則假設(shè):觀測值并非來自正態(tài)分布的總體。
print(stats.normaltest(coastal))
print(stats.normaltest(inland))


結(jié)論:很遺憾,兩樣本正態(tài)分布可能性為0

圖片

接下來我們處理方法:
  》》將分布轉(zhuǎn)換為正態(tài)分布
  》》使用非參數(shù)檢驗(yàn)
  》》樣本容量較大時(shí),可以近似使用z檢驗(yàn)

圖片

#將數(shù)據(jù)轉(zhuǎn)換為正態(tài)分布
bc_coastal, _ = stats.boxcox(coastal)
bc_inland, _ = stats.boxcox(inland)
#初始畫布與坐標(biāo)系
fig, ax = plt.subplots(1, 2)
#設(shè)置畫布大小
fig.set_size_inches(15, 5)
#繪制兩個(gè)樣本的分布。
sns.distplot(bc_coastal, ax=ax[0])
sns.distplot(bc_inland, ax=ax[1])

圖片

#繪制轉(zhuǎn)換后的pp圖與qq圖
plot_pp_qq(bc_coastal)

圖片

#繪制轉(zhuǎn)換后的pp圖與qq圖
plot_pp_qq(bc_inland)

圖片

#再次進(jìn)行正態(tài)性檢驗(yàn)
print(stats.normaltest(bc_coastal))
print(stats.normaltest(bc_inland))

圖片

# 進(jìn)行方差齊性(方差是否相等)檢驗(yàn)。為后續(xù)的兩樣本t檢驗(yàn)服務(wù)。
# 原假設(shè):多個(gè)樣本的方差相等。
# 備則假設(shè):多個(gè)樣本的方差不等。
stats.levene(bc_coastal, bc_inland)


結(jié)論:方差不等。

圖片

# 進(jìn)行兩樣本t檢驗(yàn)。
# equal_var:方差是否齊性(相等)。
# 原假設(shè):兩獨(dú)立樣本均值相等。
# 備則假設(shè):兩獨(dú)立樣本均值不等。
r = stats.ttest_ind(bc_coastal, bc_inland, equal_var=False)
print(r)


結(jié)論:兩獨(dú)立樣本均值不等,說明沿海城市空氣質(zhì)量普遍好于內(nèi)陸城市。

圖片

#非參數(shù)檢驗(yàn)


# 曼-惠特尼檢驗(yàn)。應(yīng)該僅在每個(gè)樣本容量 > 20時(shí)使用。
# 原假設(shè):兩個(gè)樣本服從相同的分布。
# 備則假設(shè):兩個(gè)樣本服從不同的分布。
print(stats.mannwhitneyu(coastal, inland))
# 威爾科克森秩和檢驗(yàn)。
# 原假設(shè):兩個(gè)樣本服從相同的分布。
# 備則假設(shè):兩個(gè)樣本服從不同的分布。
print(stats.ranksums(coastal, inland))


結(jié)論:兩個(gè)樣本服從不同的分布。

圖片

近似使用z檢驗(yàn):當(dāng)樣本量足夠大時(shí),即使總體不服從正態(tài)分布,也可以使用z檢驗(yàn)進(jìn)行檢驗(yàn).


#方差齊性檢驗(yàn)
stats.levene(coastal, inland)
結(jié)論:方差相同

圖片

#進(jìn)行t檢驗(yàn)
r = stats.ttest_ind(coastal, inland, equal_var=True)
#輸出結(jié)果
print(r)


結(jié)論:兩獨(dú)立樣本均值不等,與之前結(jié)論一致,更進(jìn)一步說明沿海城市空氣質(zhì)量普遍好于內(nèi)陸城市。

圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 環(huán)境
    +關(guān)注

    關(guān)注

    0

    文章

    125

    瀏覽量

    16387
  • 空氣質(zhì)量
    +關(guān)注

    關(guān)注

    0

    文章

    40

    瀏覽量

    8423
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    跪求各路大神labview如何計(jì)算AQI

    使用labview前面板與程序框圖設(shè)計(jì),實(shí)現(xiàn)能夠計(jì)算空氣質(zhì)量指數(shù)AQI 不知道怎樣才能實(shí)現(xiàn)AQI中的最低濃度等,也可以理解成現(xiàn)在有一個(gè)數(shù)字需要對其進(jìn)行計(jì)算,計(jì)算過程為在一個(gè)固定表格中尋找該數(shù)字位置
    發(fā)表于 05-19 16:49

    經(jīng)濟(jì)預(yù)測模型

    該資料是由幾篇論文和一個(gè)講義組成,具體講解了回歸分析預(yù)測、時(shí)間序列預(yù)測、宏觀計(jì)量經(jīng)濟(jì)模型
    發(fā)表于 08-15 10:47

    CCD圖像分析方法和預(yù)測算法???

    CCD圖像分析方法和預(yù)測算法???
    發(fā)表于 07-01 15:20

    使用預(yù)測模型預(yù)測圖片出現(xiàn)錯誤提示in_dims[1]:32 != filter_dims[1] * groups:3的解決方法

    PaddlePaddle在使用預(yù)測模型預(yù)測圖片的時(shí)候出現(xiàn)in_dims[1]32 != filter_dims[1]groups3錯誤
    發(fā)表于 03-07 14:24

    光伏功率預(yù)測有哪些作用

    光伏功率預(yù)測有哪些作用?作用有哪些?光伏功率預(yù)測是什么?光伏功率預(yù)測系統(tǒng)就是將天氣預(yù)報(bào)數(shù)據(jù)和環(huán)境檢測儀所采集的數(shù)據(jù)加以分析,最后將生成的數(shù)據(jù)文件通過非實(shí)時(shí)交換機(jī)發(fā)送給省調(diào)。省調(diào)接收數(shù)據(jù)
    發(fā)表于 07-07 07:44

    PCB產(chǎn)業(yè)投資預(yù)測分析

    PCB產(chǎn)業(yè)投資預(yù)測分析   PCB企業(yè)利潤對產(chǎn)品價(jià)格非常敏感,
    發(fā)表于 12-31 08:50 ?826次閱讀

    數(shù)據(jù)預(yù)測分析方法

    數(shù)據(jù)預(yù)測分析方法,有需要的朋友下來看看。
    發(fā)表于 01-15 15:07 ?0次下載

    微型空氣質(zhì)量監(jiān)測儀【恒美儀器HM-AQI】解決方案

    微型空氣質(zhì)量監(jiān)測儀【恒美儀器HM-AQI】是根據(jù)十三五及各地大氣污染監(jiān)測治理政策生產(chǎn)的新型空氣質(zhì)量在線多參數(shù)監(jiān)測系統(tǒng),微型空氣質(zhì)量監(jiān)測儀【恒美儀器HM-AQI】嚴(yán)格按照國家標(biāo)準(zhǔn)對四氣(CO、SO2、NO2、O3)、兩塵(PM2.5、PM10)
    發(fā)表于 05-19 10:20 ?817次閱讀

    MAX6921AQI+ PMIC - 顯示驅(qū)動器

    電子發(fā)燒友網(wǎng)為你提供Maxim(Maxim)MAX6921AQI+相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊,更有MAX6921AQI+的引腳圖、接線圖、封裝手冊、中文資料、英文資料,MAX6921AQI+真值表,MAX6921
    發(fā)表于 02-10 20:04
    MAX6921<b class='flag-5'>AQI</b>+ PMIC - 顯示驅(qū)動器

    MAX6921AQI+T PMIC - 顯示驅(qū)動器

    電子發(fā)燒友網(wǎng)為你提供Maxim(Maxim)MAX6921AQI+T相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊,更有MAX6921AQI+T的引腳圖、接線圖、封裝手冊、中文資料、英文資料,MAX6921AQI+T真值表,MAX6921
    發(fā)表于 02-10 20:14
    MAX6921<b class='flag-5'>AQI</b>+T PMIC - 顯示驅(qū)動器

    AQI分析預(yù)測-2

    AQI(air Quality Index)指空氣質(zhì)量指數(shù),用來衡量空氣清潔或者污染程度。值 越小,表示空氣質(zhì)量越好。近年來因?yàn)榄h(huán)境問題,空氣質(zhì)量越來越受到人們重視。
    的頭像 發(fā)表于 02-23 16:30 ?1662次閱讀
    <b class='flag-5'>AQI</b><b class='flag-5'>分析</b>與<b class='flag-5'>預(yù)測</b>-2

    預(yù)測分析介紹及行業(yè)應(yīng)用案例

    汽車制造商 1、預(yù)測需求和預(yù)測供應(yīng)商績效 問題:一家汽車制造商希望預(yù)測需求、優(yōu)化庫存水平并預(yù)測供應(yīng)商績效。 目標(biāo):提高效率并改進(jìn)供應(yīng)鏈管理。
    的頭像 發(fā)表于 05-30 14:08 ?717次閱讀

    AQI空氣質(zhì)量監(jiān)測站的重要性-歐森杰

    隨著交通工具的發(fā)展,工業(yè)化的進(jìn)步,空氣污染問題日益突出,因此,AQI空氣質(zhì)量監(jiān)測站的重要性也不容忽視。 一、AQI空氣質(zhì)量監(jiān)測站的定義 AQI空氣質(zhì)量監(jiān)測站是指建立在城市或者大中城市等地區(qū),用于定期
    的頭像 發(fā)表于 06-19 14:27 ?873次閱讀

    AQI空氣質(zhì)量監(jiān)測站——保護(hù)空氣質(zhì)量的重要一環(huán)

    空氣污染,是當(dāng)今社會最嚴(yán)重的環(huán)境問題之一,也是人們最關(guān)心的環(huán)境問題。為了保護(hù)空氣質(zhì)量,AQI空氣質(zhì)量監(jiān)測站至關(guān)重要。 一、AQI空氣質(zhì)量監(jiān)測站的定義 AQI(Air Quality Index
    的頭像 發(fā)表于 07-18 14:43 ?3034次閱讀

    電磁軌跡預(yù)測分析系統(tǒng)

    智慧華盛恒輝電磁軌跡預(yù)測分析系統(tǒng)是一個(gè)專門用于預(yù)測分析電磁運(yùn)動軌跡的系統(tǒng)。該系統(tǒng)結(jié)合了電磁學(xué)、運(yùn)動學(xué)、數(shù)據(jù)分析以及可能的人工智能或機(jī)器學(xué)習(xí)
    的頭像 發(fā)表于 06-25 15:19 ?685次閱讀