后台-插件-广告管理-内容页广告位一(手机)

您现在的位置是:首页 > 编程语言 > 其他编程其他编程

Python | Pandas数据清洗与画图

2021-04-18 18:39:13其他编程人已围观

简介准备数据
2016年北京PM2.5数据集

数据源说明:美国驻华使馆的空气质量检测数据
数据清洗
1. 导入数据
用Pandas库的read_csv()导入csv文件
import pandas as pd
import matp

准备数据

2016年北京PM2.5数据集
数据源说明:美国驻华使馆的空气质量检测数据

数据清洗

1. 导入数据

用Pandas库的read_csv()导入csv文件

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
# 导入2016年北京PM2.5数据集
df = pd.read_csv("Beijing_2016_HourlyPM25_created20170201.csv")
df.head()

2. 删除对数据分析没有用的列

用Pandas库的drop()删除行或列,axis=0 表示行,axis=1 表示列

df.drop(["Unit","Duration","QC Name"], axis = 1, inplace=True)
df.head()

3. 查看数据的简要信息

用Pandas库的describe()来查看数据的简要信息,包括了计数,平均值,标准差,最小值,最大值等

df.describe()

4. 删除指定的数据

通过数据的简要信息发现PM2.5的值存在负数,而PM2.5的值不能为负数
我们来查看一下PM2.5的值为负数的数量

count = 0
print('PM2.5的值为负数的数量:')
for i in range(df.shape[0]):
    if(df.at[i,'Value']<0):
        count = count + 1
print(count)


PM2.5的值为负数的数据有45条,而整个数据集的数据有8000多条
删除这45条数据对数据分析没有影响,那怎么删除这45条没用的数据呢
我们要把PM2.5的值为负数的数据变成空值(NaN),再用Pandas库的dropna()删除空值

# 把负数的值变成空值(NaN)
df.loc[df.Value<0,'Value']=np.nan
# 删除有空值的数据
df.dropna(inplace=True)
# 此时已经没有负数的PM2.5值了
df.describe()

5. 查看是否有空值

用Pandas库的isnull()来查看是否有空值,value_counts()用来统计个数

df.isnull().value_counts()

6. 查看是否有重复行

用Pandas库的duplicated()来查看是否有重复行

df.duplicated()

7. 保存数据清洗后的文件

用Pandas库的to_csv()保存csv文件

df.to_csv('Beijing_2016_PM25.csv',encoding='utf-8')

画图

导入数据清洗后的文件,统计北京2016年12个月PM2.5的平均值

我们用条形图来表示:

PM25 = pd.read_csv("Beijing_2016_PM25.csv")
month_avg = PM25.groupby(['Month'])['Value'].mean()
PM25_month = pd.DataFrame({'PM2.5平均值':month_avg}, index = np.arange(1,13))
PM25_month.plot(kind='bar',title='北京2016年12个月PM2.5的平均值')
plt.xticks(rotation=360)
plt.show()

文章来源:查看

Tags:画图   清洗   数据   Python   Pandas

很赞哦! ()

后台-插件-广告管理-内容页广告位二(手机)
后台-插件-广告管理-内容页广告位三(手机)

随机图文

后台-插件-广告管理-内容页广告位四(手机)

文章评论

留言与评论(共有 0 条评论)
   
验证码:

本栏推荐

站点信息

  • 文章统计13614篇文章
  • 浏览统计468次浏览
  • 评论统计1个评论
  • 标签管理标签云
  • 统计数据:统计代码
  • 微信公众号:扫描二维码,关注我们