QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3833|回复: 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,指空气质量指数,用来衡量空气清洁或者污染的程度,值越小,表示空气质量越好。* T: {) c6 e9 r6 C
    本文的分析目标是:
    ) m; E; V- t8 Y$ Z  F3 @0 j
    一、描述性统计
      }" [3 R+ K( U" i' R* u" e3 A. Q
    那些城市的空气质量较好/较差?空气质量在地理位置分布上,是否具有一定的规律?二、推断统计( L$ h, R% Z% I! k9 \+ G$ k
    临海城市的空气质量是否优于内陆城市?三、相关系数分析
    % s( q6 }! q  R' a- W& B  u1 \
    空气质量主要受哪些因素的影响?四、区间估计
    $ [/ a" [* A, e. J
    全国城市空气质量普遍处于哪种水平?五、统计建模+ `+ G  Y1 z  l" h1 l8 e5 j
    怎样预测一个城市的空气质量?导包并读取数据:import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as sns
    $ ~9 `  _- {" U2 {% U" B( @
    sns.set(style="darkgrid")plt.rcParams["font.family"] = "SimHei"plt.rcParams["axes.unicode_minus"] = False
    ! K! h# T7 h0 l" c! P8 V
    data = pd.read_csv("data/data.csv")print(data.shape)data.head()
    5 U& a/ {* f7 r0 V9 r) T& ^
    : e+ i$ }7 z4 v% m$ A数据集描述:# N+ T8 C8 O2 K1 ]* g0 R/ w3 r& C

    " V/ W$ n+ z# z4 n, SCity:城市名
    ( N$ t6 @% i+ y; c' I5 Q% a  k( g2 v- k* @  {  p
    AQI:空气质量指数5 s8 E6 w$ a: `7 `2 l# p, Q

    8 u3 ]7 Q; _! i  k; Y- JPrecipitation:降雨量
    9 T8 w: O! M9 Z4 }5 T, Y7 l, T$ H6 }, x0 i9 A! S2 V4 O- v
    GDP:人均生产总值0 `: K$ S# O$ v" P2 @% ?- p% C
    6 s. O) z7 X% J. `8 U- S3 @8 I
    Tempearture:温度: O2 \+ K. G$ V' c3 J4 M  P

    ( k; Z$ \1 ]( }! ?Longitude/Latitude:经/纬度1 {0 v6 _" D; a: z

    8 w7 Y' X+ a) s4 n5 E" rAltitude:海拔高度, m5 y" r3 P4 F' d% D
    5 S; K2 B' g  a6 z6 H' \; L
    PopulationDensity:人口密度
    " _3 E: A+ ]) F0 M
    6 V. A9 j7 t9 Z+ l' u! G9 ]6 ^: fCoastal:是否沿海( e( v; C" C* K4 f0 A

    7 t3 I' u8 i& H" fGreenCoverageRate:绿化覆盖率% b1 U* _9 I4 H7 y

    + C( j( D2 E) D3 H$ DIncineration(10,000ton):焚烧量(w吨)
    ; b# S1 x2 X% c! O+ ^6 D2 w" b8 Q0 {! R! `  m% C
    数据清洗
    " \# v; x6 \+ k7 D! T9 e, s检查缺失值:3 H* o: K  Y) u# y' C9 _+ `
    数据集描述:4 \+ Q/ f- E% p3 K# B4 b) _0 D
    % u3 ~+ p0 E8 \4 d3 v2 q
    City:城市名$ R6 T' S/ }$ T( ?, Z$ J
      x6 n" N" X; q+ \$ R1 P
    AQI:空气质量指数
    0 ^" G9 A" n: i! U3 {  I; B- P3 w& o" c. Z4 \" W2 Q2 W
    Precipitation:降雨量
    9 M% _0 G( \5 ?# h9 q# z5 g+ j* U! E
    - |, n2 e% ~8 yGDP:人均生产总值
    - |" E( D. m. S7 d0 l
    7 f/ u8 ]8 `- gTempearture:温度! e7 f; W7 w9 e5 a: c7 G+ r

    ( P9 b6 ^6 v. MLongitude/Latitude:经/纬度( D# Z+ C* m4 E* i( e. \6 o2 h

    3 o! s/ I0 V7 f9 DAltitude:海拔高度) J- C$ K8 b8 X
    : w! ]% u3 r/ m: r8 ?
    PopulationDensity:人口密度7 F  q% g" D+ v: B8 P6 }6 R. A4 d6 F

    5 R) o4 Z4 r+ X1 z/ E2 ?( hCoastal:是否沿海! R- O- o  S  N# u8 _9 u5 t+ _4 s0 m
    ! Z4 R0 y, S2 X+ d9 u+ @+ y$ J- @
    GreenCoverageRate:绿化覆盖率6 B, C! g' b2 K% W: N8 p9 \2 R" c0 }

    7 p; C1 F( U. M$ F/ BIncineration(10,000ton):焚烧量(w吨)) X3 z' t) x2 G7 H3 T

      L" u+ b: z3 ]0 j& s6 Y数据清洗
    : a& d; G9 y- S9 O% ]检查缺失值:" r* S2 ]6 s0 `- s7 N% I" f
    data.isnull().sum(axis=0)
    ; L$ |; b+ `% y# A% v
      N7 H% L, c5 d. A  d8 p4 L: }  R5 J* |: r( E

    " R, A" `6 t) P& _
    2 v2 [8 }3 R8 B) U查看含缺失值列数据的分布:9 V% R2 t; Y* k9 o' j
    #print(data["Precipitation"].skew())#偏度  % Y0 k" d9 v' i. A4 Q
    sns.distplot(data["Precipitation"].dropna())#要删除NA值才能做分布密度图
    : v) \0 F' b% Iplt.title("分布密度图")8 y0 ?) K$ [; z) t+ n9 h" @$ B
    0.27360760671177387
    & y: ~& u5 P% Z4 B+ }7 [) w
    8 Y1 Z& U! R+ z
    / i' l: x( M. [) e& u; r$ R8 o1 ^* C! T+ }4 k1 \

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

    对缺失值进行中位数填充

    data.fillna({"Precipitation":data["Precipitation"].median()},inplace=True)3 ^1 B8 @0 ?7 D9 `0 N" ~
    检查异常值的三种方法
    • data.describe() 查看数据的描述:分位数、均值与标准差
    • 基于正太分布 ±三个标准差涵盖99.7%的数据
    • 箱线图(四分位距IQR=Q3-Q1,上下边界:Q3/Q1 ±1.5IQR)
      ; \* `; L: ?# |

    查看数据集的偏度:

    ( W1 L' k6 S. p# R$ m
    data.skew()  m" X2 k/ V, T3 u2 U8 D

    0 ~: F  ~. n' r% jAQI                        1.1987545 ?7 _' i) I  ~8 \4 j9 V: c
    Precipitation              0.273608
    2 G- Y) e9 g! @6 aGDP                        3.761428
    ( a% e  Q1 E3 YTemperature               -0.597343* C* e- r  \, _0 c/ S/ R3 S; F5 f
    Longitude                 -1.407505
      Y; `% M3 C8 [Latitude                   0.253563
      f. ^) |8 Q6 N9 ZAltitude                   3.067242
    9 e; s- `; p4 M( O) }PopulationDensity          3.125853/ p# i1 M% e1 o% c5 ~9 @' r8 z
    GreenCoverageRate         -0.381786- E7 P+ ^$ b0 a2 |- _/ [& |* M
    Incineration(10,000ton)    4.342614* s% ~/ q* h0 @8 s' C5 t
    dtype: float64
    ! r  O' B# c+ c2 S. ]" e( p. |
    ' |8 A' h# N4 l- i; A

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

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

    1 r: s2 j. l( m  O' s* a; ~
    mean, std = data.GDP.mean(), data.GDP.std()5 j! h7 h% b, L) e
    lower, upper = mean - 3 * std, mean + 3 * std
    / X5 ?, j3 {/ T" X" u9 g; a1 b+ w; p( G! o$ S/ i
    print("均值:", mean)
    6 h' M2 Y3 O8 s; L9 H; q2 b9 K9 r# Iprint("标准差:", std)' B  ]  |1 {3 _
    print("下限:", lower)
    0 i8 M% M2 R$ V% b6 M* u4 mprint("上限:", upper)/ O$ \* v: ?6 D: \
    data.loc[(data.GDP < lower) | (data.GDP > upper), "GDP"]/ }; u" o' q9 M4 }/ T, I
    / C) J- M0 \% c' ]* H2 m
    均值: 2390.9018153846169 ]; v- t9 q+ |1 V3 T: x# Y1 |) e) G
    标准差: 3254.876921271434' N) F( O* l  @7 B! ^0 a* ?
    下限: -7373.728948429687
    & W! C: [8 C+ K3 v+ J: M上限: 12155.532579198918# e! ]0 E: F( w+ P5 P+ g7 t
    16     22968.605 H5 L- V( P! F. a: i9 Z
    63     18100.41
    7 |5 s/ I( y* u( X5 P202    24964.995 _* O1 b( R* o- t2 ~( ^2 p4 |
    207    17502.99
    3 o' r8 t) P" u0 x, ]215    14504.07
    $ a0 z+ ~) ^5 M230    16538.19( P% Q& e  X$ u, W" \, B
    256    17900.00
    ) R0 `. j1 Y- S. w* f+ J314    15719.72
    9 v: l- E) U6 f5 ~* f1 t$ J& kName: GDP, dtype: float64/ Q5 S" h0 ]/ u" X
    4 r, R  s/ }/ O! ], H5 t8 b. v
    ( a0 j, T' A$ j5 t  ~+ s

    " z$ h8 _& ?. B" u" s6 m' g9 B# W" L) M2 H/ M+ ^/ T" _
      u1 a( g$ Y& z! F( z7 p
    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-8-2 14:00 , Processed in 0.412825 second(s), 56 queries .

    回顶部