QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3866|回复: 1
打印 上一主题 下一主题

AQI空气质量分析与预测的相关资料

[复制链接]
字体大小: 正常 放大

1178

主题

15

听众

1万

积分

  • TA的每日心情
    开心
    2023-7-31 10:17
  • 签到天数: 198 天

    [LV.7]常住居民III

    自我介绍
    数学中国浅夏
    跳转到指定楼层
    1#
    发表于 2021-10-15 10:46 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    AQI分析与预测AQI全称是Air Quality Index,指空气质量指数,用来衡量空气清洁或者污染的程度,值越小,表示空气质量越好。# U0 E5 h7 W6 l7 L0 v) K
    本文的分析目标是:
    , Y6 k* {) V6 l6 F% \1 q2 I( x- f
    一、描述性统计
    1 d2 j, o. V& f. p! R$ g
    那些城市的空气质量较好/较差?空气质量在地理位置分布上,是否具有一定的规律?二、推断统计
    + _2 G- W- \! @) Y1 C  Q# R
    临海城市的空气质量是否优于内陆城市?三、相关系数分析
    ( x) I, I2 n; Q  k6 {
    空气质量主要受哪些因素的影响?四、区间估计
    9 q' f2 u/ ?' t7 {6 z& ~6 f/ u2 y
    全国城市空气质量普遍处于哪种水平?五、统计建模' q0 T0 w" J  u
    怎样预测一个城市的空气质量?导包并读取数据:import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as sns
    5 M/ \- k! p3 O! ]3 I
    sns.set(style="darkgrid")plt.rcParams["font.family"] = "SimHei"plt.rcParams["axes.unicode_minus"] = False6 h( o. E; {( F! T1 s0 L1 L+ Q: x5 S
    data = pd.read_csv("data/data.csv")print(data.shape)data.head()
    + C/ `5 O, ?; e, q+ S" s" d! Z( k/ N5 N2 q. u
    数据集描述:2 q! i* _$ @+ w

    7 e2 S+ ^8 N) k& i$ q8 V) YCity:城市名# {/ q$ U! [5 k8 G2 `6 W( E) j0 m

    8 [7 o5 z% a. @AQI:空气质量指数
    , `: B' N$ }, e/ o3 g. h( o% b' z
    8 ^' X6 p) T# h: hPrecipitation:降雨量
    0 T  ]$ P/ d% _. F" F8 e( ~' Y3 K& o" @: M- K
    GDP:人均生产总值
    # ^- P) H4 E9 d, ~  K) ~- Q$ S# U$ O  c8 N0 b; O% n
    Tempearture:温度  A9 f* H  }1 i
    / S; M, ], S! s) M$ h  _- J  G6 z
    Longitude/Latitude:经/纬度2 x( M* g2 p2 H& y: V4 y& H

    " d+ I" {$ ]) a+ _) E7 ^( J8 uAltitude:海拔高度. \* H% |/ `1 T  E( A. X2 L) [
    ; @1 ~& d3 r! h, l1 }
    PopulationDensity:人口密度
    " N% v. Z) c& X' H& d6 w; p6 k; f" ]6 \. [4 A2 B
    Coastal:是否沿海( @# W4 w0 g, u: [. v1 ]
    / {( O( N) a* D6 |+ K* E
    GreenCoverageRate:绿化覆盖率
    - K# }0 z  V- B/ ~
    " t+ D5 C* ]; q$ EIncineration(10,000ton):焚烧量(w吨)6 [: R9 l7 `" R8 g8 S
    # E" [+ k! S" b8 E4 K# ~( G
    数据清洗& |% C" E# u, r) Q5 p1 Z1 G
    检查缺失值:/ u9 ^" {, q8 H- E& D2 @6 y
    数据集描述:' I/ h# ~6 U, h5 e
    % e' i+ N; p- l8 K+ M4 G: @! Y$ F
    City:城市名0 t( N+ Y' j  a! a# t

    ! z* `7 x5 ~0 r1 w$ K: JAQI:空气质量指数5 S; Q7 C) k$ s7 l/ n: Z8 s

    ' W/ k. r* S! U" I. I/ lPrecipitation:降雨量% z6 \4 N/ Q* D7 G' P" k$ `% }

    * J. s* M8 s5 R' E9 E0 V* XGDP:人均生产总值
    5 }" J# x) v3 C+ ^+ {( ~) M' [5 e  c( T" c+ s. T+ C  t2 {% u
    Tempearture:温度
    # I6 o* c$ c8 A( U
    % T7 m$ L1 t( e0 C' j% c7 MLongitude/Latitude:经/纬度
    - e  J5 x" Z  Z. c" Q9 Q- k/ ^$ }3 N+ q. m5 O, G
    Altitude:海拔高度
    6 B- g1 Y9 L. |7 E# E
    ; f# ^7 R5 I1 f9 F6 T7 K5 X7 D6 x7 VPopulationDensity:人口密度8 l9 [) B* U# p9 a- W: ^! c

    + I3 C: N+ e3 Y- D$ DCoastal:是否沿海
    , ?# e3 q/ G8 Z$ O. d0 a4 j6 q$ d) F7 s* ^5 P- f' z* _: A9 ^0 |: a
    GreenCoverageRate:绿化覆盖率; S' D6 x6 W' n3 p
    2 S5 w( N0 X  Q+ T3 H5 a* @& p
    Incineration(10,000ton):焚烧量(w吨)
    : y* n8 Q; _0 h4 V: Q4 A$ ]% t& U1 o5 c# K
    数据清洗' O. j8 M9 W' d; D  u
    检查缺失值:* p- K! b" L  n! I8 c6 I
    data.isnull().sum(axis=0)
    * Q! ]$ J' c: ?. i* i$ _( r2 t. E. }4 o# d: K

    ) _6 i* ?5 B  w2 o( r7 y2 o% U. y$ U, K5 T
    : A# X, H: T% i0 p* ]
    查看含缺失值列数据的分布:9 L$ Y9 U6 u$ y. r
    #print(data["Precipitation"].skew())#偏度  
    1 d8 W" i/ @* y# d: _sns.distplot(data["Precipitation"].dropna())#要删除NA值才能做分布密度图
    3 n1 Z' D8 k! |: d% Aplt.title("分布密度图"). |- W% H# m  @; N& N. M* c5 E+ y
    0.27360760671177387
    5 j& W/ U$ u) G1 i1 l' U
    1 I+ t7 M! T% s/ }
    7 l: H# _7 b/ O5 Q& c* E, p
    7 p2 d! B1 G1 u4 y

    数值型变量,数据呈现右偏分布,所以使用中位数填充。

    对缺失值进行中位数填充

    data.fillna({"Precipitation":data["Precipitation"].median()},inplace=True)7 f, x0 Z6 h- m3 ^; o, S
    检查异常值的三种方法
    • data.describe() 查看数据的描述:分位数、均值与标准差
    • 基于正太分布 ±三个标准差涵盖99.7%的数据
    • 箱线图(四分位距IQR=Q3-Q1,上下边界:Q3/Q1 ±1.5IQR)
      ) ~/ g, R- t" A; ^0 {6 Y

    查看数据集的偏度:

    . j4 ~" p$ F5 x4 @( W
    data.skew()
    3 d; f0 L0 f: f5 L; w; n1 F
    , z* g' v6 ~, i  GAQI                        1.198754& Z  M  w4 x: F8 l7 P* W. o8 r
    Precipitation              0.273608
    * \4 u3 h* W; K+ g! i6 @' z" H- \GDP                        3.761428  c7 e3 v4 w6 z6 Q  Y; n
    Temperature               -0.597343. K$ r4 O& w& S! L( L1 Y" i$ y
    Longitude                 -1.407505. D0 E* K/ d  Z& o9 ^
    Latitude                   0.253563
    , z. T/ j( U# cAltitude                   3.067242' j8 D6 ]3 D! q& ?; r
    PopulationDensity          3.125853
    , T: ]  D) J0 @6 j; dGreenCoverageRate         -0.381786) z' x' \3 L5 }" ?4 a2 ~4 M# R
    Incineration(10,000ton)    4.342614$ e, {8 k1 E% {% Z& ~3 J6 ]+ _. Q
    dtype: float645 t! L& R- D( M% H; s4 X
    6 w9 \6 Y( t* S7 y  V/ m$ a# f

    可以看到GDP和人口密度等都出现了严重的右偏分布,意味着存在很多极大的异常值。

    下面我们查看以下GDP的异常值:


    ; O+ a5 E+ j  C+ |. n' z. ^* @; m5 _mean, std = data.GDP.mean(), data.GDP.std()& |+ A+ O  g( \% P/ s; s: L
    lower, upper = mean - 3 * std, mean + 3 * std
    , C, G, T+ }, h& }+ D& G+ }
    ' X; e& P, i2 T+ m, Cprint("均值:", mean)% H6 m; X: x$ S
    print("标准差:", std)
    8 ]9 m0 H& z5 Lprint("下限:", lower)  S" I. _* H8 S  ^
    print("上限:", upper)' B( a3 @6 S7 j/ g6 @
    data.loc[(data.GDP < lower) | (data.GDP > upper), "GDP"]' Q% `1 R- _9 p
    9 D' h, q2 X/ w1 r5 `3 b
    均值: 2390.901815384616
    3 a$ u$ b; A" w0 \) o( }标准差: 3254.876921271434
    ( _! u/ {; T* A" K9 v4 C下限: -7373.728948429687
    % v* H6 i( j' R+ ~上限: 12155.532579198918
    ; e+ e8 }/ J0 Y7 [! q16     22968.60* t5 [8 L  E( Z# D5 h, @
    63     18100.411 F2 [' m2 w4 q& @
    202    24964.99! H3 V$ x+ C/ y
    207    17502.99
    3 {9 q7 B2 k' l) b+ [/ i215    14504.07& C- S0 t/ E# n& f5 u
    230    16538.19
    7 W+ K* h! s+ g# L; _: l# a+ q- w256    17900.00+ s7 L7 Y) x: a7 d6 ^9 _
    314    15719.72
    3 I8 R" e5 d# I3 ?* ^$ jName: GDP, dtype: float64
    . }1 w1 u, S7 ]6 C4 w( `. d( b
    * L' a. A+ u' R9 C  l% C
    ) Y! L% F& n2 y4 q# r
    . S& I" v, N9 b7 L4 m9 ?* k+ Y4 z, U
    1 L6 P' d0 ]: {, o
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    sjlxdn        

    1

    主题

    2

    听众

    155

    积分

    升级  27.5%

  • TA的每日心情
    无聊
    2022-2-19 17:40
  • 签到天数: 30 天

    [LV.5]常住居民I

    国际赛参赛者

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-9-12 10:18 , Processed in 0.352244 second(s), 56 queries .

    回顶部