QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3901|回复: 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,指空气质量指数,用来衡量空气清洁或者污染的程度,值越小,表示空气质量越好。
    & @. ~  [! M# S0 s* u0 v! J
    本文的分析目标是:# u: Y5 s/ O7 n# d, f- R$ U
    一、描述性统计( H' G0 N' h/ T; s0 }
    那些城市的空气质量较好/较差?空气质量在地理位置分布上,是否具有一定的规律?二、推断统计& I+ ?+ X- L6 j9 [' K/ T/ F
    临海城市的空气质量是否优于内陆城市?三、相关系数分析
    , k1 X* z  h% B& R* \
    空气质量主要受哪些因素的影响?四、区间估计
    * z9 S. U" ~' L& y
    全国城市空气质量普遍处于哪种水平?五、统计建模
    * p  z' x7 t' V# h& y7 S
    怎样预测一个城市的空气质量?导包并读取数据:import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as sns
    # ^- ^; V* W' g2 \9 g- I
    sns.set(style="darkgrid")plt.rcParams["font.family"] = "SimHei"plt.rcParams["axes.unicode_minus"] = False
    ) G8 l9 R, e! n  [. v' v
    data = pd.read_csv("data/data.csv")print(data.shape)data.head()( r. Y0 B# v5 k" t7 j( H# y
    ' [0 z$ d! t6 f) p3 v1 h
    数据集描述:' @8 ^; k5 B( x+ A) i2 b+ J$ F+ k: j

    ; S6 ~8 w, S+ D1 N  S! J. b& I2 x1 YCity:城市名
    4 b( P/ {* C) Z  W9 W5 x0 X9 I# e0 V# O
    AQI:空气质量指数
    . g2 k& A8 t$ F1 u( P
    6 l. ?& K9 R) E' t/ k& FPrecipitation:降雨量4 y) U1 l6 e' \$ X0 ?
    ; a* R1 t% U% ?$ g$ z" @
    GDP:人均生产总值9 r. [: g5 y8 D& D
    ) t! }; m$ y4 k4 V6 |& j" ^4 `& z
    Tempearture:温度" T$ B3 b& m9 g) V# S7 {4 u
    1 f8 `% s2 R- q$ r  k5 \6 K
    Longitude/Latitude:经/纬度
    1 m$ s  s! t; }4 J. Z. U
    / f4 u/ B3 g; G- y$ ~& W3 sAltitude:海拔高度" ^# m% l8 V# u( w# m

    9 y" O, M. \4 N' n1 |PopulationDensity:人口密度
    - F# H  j% T7 M; V
    ) J" |6 x; C/ e) J4 V" lCoastal:是否沿海0 X. m4 K3 x. F- {- d5 N

    , n$ ^8 b5 }' I) ]: _" ~GreenCoverageRate:绿化覆盖率
    & ~4 a1 g6 r5 {8 r8 e# h5 }9 V$ ~7 L) P* `' v. g& e
    Incineration(10,000ton):焚烧量(w吨)3 C' F9 W2 N7 s1 {  b" K# S

    - U! M" s8 a) m1 B" m0 L3 c, J4 t: B数据清洗/ o- X0 J: e9 L( @
    检查缺失值:2 T; U6 u* o" j, L" x
    数据集描述:
    6 D, o. V/ H! U. u' ]% |0 D+ E; B7 S) H. a& y5 t; t+ h6 o
    City:城市名2 h" P& P: m  _7 r

    0 M, @% q5 Q* k4 R9 c7 v0 K$ OAQI:空气质量指数0 U, D+ J4 O% Y
    6 V0 G# j4 [( a6 A0 L% L
    Precipitation:降雨量
    . z8 {( e$ s5 `8 N# J( X- Z- h4 r$ v4 g% a! ^. I. E) q) m
    GDP:人均生产总值8 k& k0 O0 X( F& S! y' N4 `% c; F1 l
    % p1 l/ m9 F8 P! ~
    Tempearture:温度1 z) u0 `- c8 \  l( p
    2 l8 [, i" ~$ k; t5 \
    Longitude/Latitude:经/纬度# A, D+ I+ }# \8 u+ |8 ]# p
    - ^; O4 X. `4 d3 N: t: L
    Altitude:海拔高度- ]. B5 ]# I' @. C8 A* q

    # J4 ~; H$ ?! K1 m5 J+ A) P' EPopulationDensity:人口密度
    $ P% [& P. n0 N( G, W" B
    & |. K" d8 o: mCoastal:是否沿海' o  U0 I6 f2 F8 F& Z/ T8 c& S
    ' _0 \/ v( C! g; G$ z  d- @% c
    GreenCoverageRate:绿化覆盖率
    ' d$ V1 l3 v0 W4 k3 x
    ' D/ k: a! t3 K. ^/ _) {: Y' _0 lIncineration(10,000ton):焚烧量(w吨)
    / X0 _3 N* H; Y6 W1 i; r7 A9 E9 e
    数据清洗+ o6 t" l/ S2 C& |- ]% b6 M
    检查缺失值:
    + w9 e& Z  a$ X3 v$ adata.isnull().sum(axis=0)3 v, h' u3 ]* q( c- E  ^2 S2 m
    - U4 P; ?. J8 A9 e. P) m* L" J

    7 |8 s6 B% O% V6 ?: ^9 j4 u9 L: p: J6 I4 O' S( ?* a
    ; N2 b+ P/ L6 ]3 `3 ?1 [
    查看含缺失值列数据的分布:  w0 _. t2 G( t. S
    #print(data["Precipitation"].skew())#偏度  2 |- {! K4 R# s' P+ y
    sns.distplot(data["Precipitation"].dropna())#要删除NA值才能做分布密度图
    + C- }6 j% b! Q- F9 Bplt.title("分布密度图")
    8 b' A0 e" ~8 m/ x$ T0.27360760671177387
    6 ~8 X) Y( i- R7 j) l8 H" _) `( y$ Y8 t( p

    9 _6 o7 z0 a% ?5 c' V) D5 P0 w3 i
    ) J& k5 E% E6 I3 v

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

    对缺失值进行中位数填充

    data.fillna({"Precipitation":data["Precipitation"].median()},inplace=True)
      R8 x/ a/ }- S$ K检查异常值的三种方法
    • data.describe() 查看数据的描述:分位数、均值与标准差
    • 基于正太分布 ±三个标准差涵盖99.7%的数据
    • 箱线图(四分位距IQR=Q3-Q1,上下边界:Q3/Q1 ±1.5IQR)/ m; {1 F6 z# m/ Q* f" ?( T; r

    查看数据集的偏度:

    ! X0 r: T- \) |
    data.skew()
    1 a4 N8 U/ E8 ?, f5 G% x! x1 v' e" I0 m: K8 B1 B  q8 h$ y
    AQI                        1.198754
    8 k; p; s0 v& ^0 U: l3 KPrecipitation              0.273608
    7 P; Q# L1 L8 z2 \& j/ }5 @' eGDP                        3.761428# N+ p& w8 S% l/ Z4 D: C
    Temperature               -0.597343# n" ]7 a" n1 M8 O, P
    Longitude                 -1.407505
    4 G9 B: Z9 q9 Q7 _. T6 u6 I" v# mLatitude                   0.253563
    ( R- `9 {* M+ r/ q' E, t  HAltitude                   3.067242
    % `) _0 O/ L3 W$ h2 vPopulationDensity          3.125853
    # j+ K) Y) _. FGreenCoverageRate         -0.381786" c' _& F8 l. T( `: {1 X
    Incineration(10,000ton)    4.342614
    : U3 L, n# Q3 |! Xdtype: float646 G$ `5 B( ^' W" O* Q5 j
      n5 O- S2 w% x6 M

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

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


    ( m0 ^$ e" U, F, ?3 k/ E: Pmean, std = data.GDP.mean(), data.GDP.std()' e* O' S1 d# K5 B4 H2 _$ v+ H
    lower, upper = mean - 3 * std, mean + 3 * std
    0 e1 I3 {1 l7 A4 r9 w: D! c  y6 u$ r7 |/ i/ H8 o  M
    print("均值:", mean)
    ! p5 b. N  c6 Y) n- }0 @& [# tprint("标准差:", std)
    8 D. B4 _/ q& a5 w0 [/ q( [7 Pprint("下限:", lower)
    9 P$ N; E7 Q7 X- u. Aprint("上限:", upper)
      ~& G4 ~8 I, V* K) Cdata.loc[(data.GDP < lower) | (data.GDP > upper), "GDP"]
    * ?4 ~, |& d% ^3 K  `9 o9 _' I6 T7 Z4 ]& n' f# L, z& i- v$ j
    均值: 2390.901815384616
      @# Y6 f9 n" o! a3 {" U标准差: 3254.876921271434* E5 t* _+ m7 A7 o
    下限: -7373.728948429687
    & t, P6 C+ P# Q- e上限: 12155.532579198918" |: U$ q3 q) t# @
    16     22968.60
    1 p9 T5 K% d6 A- J) x6 i& x8 `63     18100.41) y% h) X0 `/ A+ J4 h# ?
    202    24964.99
    ; C+ B5 m$ m/ X3 w+ ]7 [* T" I, A207    17502.993 p& w* w. v$ Y+ Q
    215    14504.07/ w! C4 q+ I2 E0 o" [
    230    16538.19
    : `0 W7 n9 p" y0 I/ z- B' L256    17900.00
    $ ^0 J2 o/ j- T3 i314    15719.720 A: ^- g8 C) O0 @( V
    Name: GDP, dtype: float64; _3 N9 G% d# F
    7 K0 _/ ]+ _, W7 C
    - i$ q3 o0 Y- {

    9 i! v/ M+ _% z3 E! v, V+ K6 ]- }3 M# c$ k

    " T5 F; L' T: p# M
    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-10-11 06:42 , Processed in 0.361869 second(s), 56 queries .

    回顶部