pandas案例——预处理部分地区数据

news2024/11/15 4:22:39

数据清洗的任务是过滤那些不符合要求的数据,将过滤的结果交给业务主管部门,确认是否过滤掉还是由业务单位修正之后再进行抽取。不符合要求的数据主要是有不完整的数据、错误的数据、重复的数据三大类。数据清洗是与问卷审核不同,录入后的数据清理一般是由计算机而不是人工完成。

数据清洗主要是处理缺失数据、重复数据、错误数据等。
处理缺失值常用方法:

  • 删除数据:根据缺失情况,按行删除或者按列删除
  • 度量填补缺失值:可以根据数据属性,采用均值、中位数、众数等中心度量值来填补缺失数据
  • 预测填补缺失值:可以将缺失属性作为因变量,建立分类或回归模型,对缺失值进行建模填补

案例一:预处理部分地区数据

  • 读取北京地区的数据
  • 读取天津地区的数据
  • 检测file_data_bjinfo中的数据,返回True的表示是重复数据
  • 检测file_data_tjinfo中的数据,返回True的表示是重复数据
  • 对北京地区的数据,删除重复值
  • 检测天津地区的数据是否存在缺失值
  • 计算天津地区常住人口的平均数,设置float类型,并保留两位小数,并且以字典映射的方式进行填充
  • 对北京地区信息进行异常值检测。并且用箱型图进行表示
  • 对天津地区信息进行异常值检测。并且用箱型图进行表示
  • 对两地数据进行合并
# 读取北京地区的数据
import pandas as pd
with open("北京地区信息.csv") as f:
    file_data_bjinfo = pd.read_csv(f)
# 读取天津地区的数据
with open("天津地区信息.csv") as f:
    file_data_tjinfo = pd.read_csv(f)
# 检测file_data_bjinfo中的数据,返回True的表示是重复数据
dup_bj = file_data_bjinfo.duplicated()
print(dup_bj)

# 检测file_data_tjinfo中的数据,返回True的表示是重复数据
dup_tj = file_data_tjinfo.duplicated()
print(dup_tj)

# 对北京地区的数据,删除重复值
drop_dup_bj = file_data_bjinfo.drop_duplicates()
print(drop_dup_bj)
# 检测天津地区的数据是否存在缺失值
print(pd.isnull(file_data_tjinfo))
# 计算天津地区常住人口的平均数,设置float类型,并保留两位小数
avg = float("{:.2f}".format(file_data_tjinfo['常住人口(万人)'].mean()))
# 以字典映射的方式进行填充
values = {'常住人口(万人)':avg}
file_data_tjinfo = file_data_tjinfo.fillna(value=values)
print(file_data_tjinfo)
# 对北京地区信息进行异常值检测。并且用箱型图进行表示
from matplotlib import pyplot as plt 

plt.rcParams['font.family']=['STFangsong']  # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
file_data_bjinfo.boxplot()
plt.show()

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MhrBG5UL-1674035724739)(output_12_0.png)]

# 对天津地区信息进行异常值检测。并且用箱型图进行表示
file_data_tjinfo.boxplot()
plt.show()

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FECtwj7C-1674035724741)(output_13_0.png)]

# 对两地数据进行合并
print(pd.concat([file_data_bjinfo,file_data_tjinfo],join='inner',axis=0,ignore_index=True))

数据

北京地区信息.csv

省级单位,地级单位,县级单位,区划类型,行政面积(K㎡),户籍人口(万人),男性,女性,GDP(亿元),常住人口(万人)
北京,北京,西城区,市辖区,51,146.47,72.88,73.59,3602.36,125.9
北京,北京,东城区,市辖区,42,97.41,47.91,49.5,2061.8,87.8
北京,北京,丰台区,市辖区,306,115.33,58.39,56.95,1297.03,225.5
北京,北京,西城区,市辖区,51,146.47,72.88,73.59,3602.36,125.9
北京,北京,朝阳区,市辖区,455,210.91,105.43,105.48,5171.03,385.6
北京,北京,房山区,市辖区,1990,81.28,40.76,40.52,606.61,109.6
北京,北京,丰台区,市辖区,306,115.33,58.39,56.95,1297.03,225.5
北京,北京,石景山区,市辖区,84,38.69,19.87,18.82,482.14,63.4
北京,北京,海淀区,市辖区,431,240.2,120.08,120.12,5395.16,359.3
北京,北京,房山区,市辖区,1990,81.28,40.76,40.52,606.61,109.6
北京,北京,通州区,市辖区,906,74.68,37.08,37.6,674.81,142.8
北京,北京,顺义区,市辖区,1020,62.74,31.12,31.61,1591.6,107.5
北京,北京,昌平区,市辖区,1344,61.14,30.72,30.41,753.39,201
北京,北京,大兴区,市辖区,1036,68.38,34.02,34.36,1796.95,169.4
北京,北京,门头沟区,市辖区,1451,25.12,12.8,12.32,157.86,31.1
北京,北京,怀柔区,市辖区,2123,28.29,14.13,14.16,259.41,39.3
北京,北京,平谷区,市辖区,950,40.2,20.22,19.98,218.31,43.7
北京,北京,密云区,市辖区,2229,43.59,21.77,21.82,251.13,48.3
北京,北京,延庆区,市辖区,1994,28.42,14.32,14.11,122.66,32.7

天津地区信息.csv

省级单位,地级单位,县级单位,区划类型,行政面积(K㎡),户籍人口(万人),男性,女性,GDP(亿元),常住人口(万人)
天津,天津,和平区,市辖区,10,42.32,20.37,21.95,802.62,35.19
天津,天津,河东区,市辖区,39,75.79,38.06,37.73,290.98,97.61
天津,天津,河西区,市辖区,37,83.2,40.83,42.37,819.85,99.25
天津,天津,南开区,市辖区,39,87.28,43.3,43.98,652.09,114.55
天津,天津,河北区,市辖区,27,63.42,31.86,31.56,415.67,89.24
天津,天津,红桥区,市辖区,21,51.66,25.93,25.73,208.16,56.69
天津,天津,东丽区,市辖区,460,37.7,18.83,18.87,927.08,76.04
天津,天津,西青区,市辖区,545,14.85,19.85,20.38,1040.27,85.37
天津,天津,津南区,市辖区,401,44.83,22.35,22.48,810.16,89.41
天津,天津,北辰区,市辖区,478,40.39,20.09,20.3,1058.14,
天津,天津,武清区,市辖区,1570,92.27,45.86,46.41,1151.65,119.96
天津,天津,宝坻区,市辖区,1523,71.1,35.72,35.39,684.07,92.98
天津,天津,滨海新区,市辖区,2270,128.18,66.04,62.14,6654,299.42
天津,天津,宁河区,市辖区,1414,40,20.21,19.79,525.37,49.57
天津,天津,静海区,市辖区,1476,59.79,30.35,29.44,667.83,79.29
天津,天津,蓟州区,市辖区,1593,86.24,43.86,42.38,392.55,91.15

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/171277.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用反射和泛型简化Golang查询数据库代码的方案

大纲Postgresql数组案例常规写法定义结构体查询数据问题反射泛型写法结构体定义接口Tag实现逻辑泛型设计实例化模型结构体获取表名过滤字段组装SQL语句查询遍历读取结果实例化模型结构体组装Scan方法的参数调用Scan方法并保存结果完整代码小结Postgresql数组 Postgresql有个很…

7、操作DOM对象(重点)

核心:浏览器网页就是一个DOM树形结构 更新:更新该DOM节点的内容,相当于更新了该DOM节点表示的HTML的内容; 遍历:遍历该DOM节点下的子节点,以便进行进一步操作; 添加:在该DOM节点下…

Matlab中的dsp.AudioFileReader函数的认识和学习

在Matlab中的dsp.AudioFileReader函数的认识和学习1.描述2.语法2.1 语法描述2.2 属性Properties2.3 举例Stream from audio file 来自音频文件的流 1.描述 dsp.AudioFileReader系统对象™ 从音频文件读取音频样本。 要从音频文件读取音频样本,请执行以下操作&…

小方制药冲刺A股上市:毛利率走低,方之光、鲁爱萍夫妇为实控人

近日,上海小方制药股份有限公司(下称“小方制药”)公开预披露更新招股书,准备在上海证券交易所主板上市。据贝多财经了解,小方制药于2022年7月1日递交招股书,国信证券为其保荐机构。 本次冲刺上市&#xff…

扫码器:壹码通(EMT 6621)二维码带多个回车换行处理

摘要:二维码运用越来越广泛了,目前在医院中一个二维码可以串联多个系统,二维码的内容也可以设置一些特殊字符去达成系统便捷性。本次遇到为二维码中开头内置了回车和空格,在程序判断为回车(KEY_ENTER)时就会触发业务逻辑&#xff…

mybatis之一级缓存和二级缓存

缓存: 查询需要连接数据库,非常的耗费资源,将一次查询的结果,暂存在一个可以直接取到的地方,我们将其称之为缓存,当我们需要再次查询相同的数据时,直接走缓存这个过程,就不用走数据…

【RabbitMQ三】——RabbitMQ工作队列模式(Work Queues)

RabbitMQ工作队列模式为什么要有工作队列模式如何使用工作队列模式轮询消息确认验证消息确认消息持久化公平调度验证公平调度**现在将消费者1中的Thread.sleep(1000)改为Thread.sleep(3000);不添加公平调度相关代码进行测试。**现在将消费者1中的Thread.sleep(1000)改为Thread.…

BC即将登录Coinbase Institutional,2023年以全新姿态出发

以支付为最初定位的加密资产,在支付领域的发展始终停滞不前,尤其是在2022年,加密行业经历了几次“至暗时刻”,导致加密市场资金不断出逃市场全面转熊,越来越多的人对加密资产市场的发展前景失去信心。 而在2021年年底开…

【GD32F427开发板试用】移植CoreMark验证0等待区Flash大小

本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站。作者:Doravmon 引言 非常荣幸能够参与到此次GD32F427开发板试用的活动中来,在拿到开发板之前就翻了翻手册,一直有个疑问困惑…

APM/STM32F072RB基于HAL库配置USB CDC虚拟串口功能

APM/STM32F072RB基于HAL库配置USB CDC虚拟串口功能📢采用的自制开发板,开源PCB工程详情放在《极海APM32F072RB开发环境测试》✨本案例基于STM32CubeMX工具配置。📺使用STM32CubeMX工具配置工程改为APMF072RB型号过程如下: ⛳注意…

性能测试实战 | 电商业务的性能测试(一): 必备基础知识

本文为霍格沃兹测试学院优秀学员课程学习系列笔记,想一起系统进阶的同学文末加群交流。 1.1 测试步骤总览 需求分析与测试设计(性能需求目标业务模型拆解) 测试数据准备和构造(基于模型的数据准备) 性能指标预期(性能需求目标) 发压工具配…

vue2 使用@vue/composition-api依赖包 编译、打包各种报错

vue2 使用vue/composition-api依赖包 编译、打包各种报错问题来源解决办法最近在维护以前(大概一年前)的项目时,遇到个这种问题: 项目本身是用 vue-cli 创建的 vue 2.x.xx 版本的项目,然后引入 vue/composition-api 依…

MIT6.830-2022-lab5实验思路详细讲解

文章目录前言一、实验背景二、实验正文Exercise 1 :SearchExercise 2 :Insert - Splitting PagesExercise 3 :Delete - Redistributing pagesExercise 4:Delete - Redistributing pages总结前言 Datebase中很重要的一部分就是ind…

【Java面试】SpringBoot篇

注:本文通篇将SpringBoot以sb代替。 文章目录Spring和SpringBoot的关系和区别?谈谈你对SpringBoot的理解,它有哪些特性?SpringBoot的核心注解说说你对SpringBoot自动配置的理解为什么SpringBoot的jar包可以直接运行?Sp…

uboot启动流程分析(基于i.m6ull)

一、uboot的makefile 1.1 makefile整体解析过程 为了生成u-boot.bin这个文件,首先要生成构成u-boot.bin的各个库文件、目标文件。为了各个库文件、目标文件就必须进入各个子目录执行其中的Makefile。由此,确定了整个编译的命令和顺序。 1.2 makefile整…

10.2 初始泛型算法

文章目录只读算法find()count()accumulate()equal()写容器元素算法fill()fill_n()back_inserter()copy()copy_backward()replace()replace_copy()next_permutation()prev_permutation()重排容器元素算法sort()unique()stable_sort()除了少数例外,标准库算法都对一个…

pandas数据聚合与分组运算

文章目录数据聚合与分组运算分组与聚合的原理通过groupby()方法将数据拆分成组按列名进行分组按Series对象进行分组按字典进行分组按函数进行分组数据聚合与分组运算 对数据集进行分组并对各组应用一个函数(无论是聚合还是转换),通常是数据分…

哈佛结构和冯诺依曼结构?STM32属于哈佛结构还是冯诺依曼结构?

现代的CPU基本上归为冯诺伊曼结构(也成普林斯顿结构)和哈佛结构。 冯诺依曼体系 冯诺依曼体系结构图如下 冯诺依曼结构也称普林斯顿结构,是一种将程序指令存储器和数据存储器合并在一起的存储器结构。数据与指令都存储在同一存储区中&…

大数据技术架构(组件)5——Hive:流程剖析2

1.1.2、Stage division(不够细致,需要例子)Stage理解:结合对前面讲到的Hive对查询的一系列执行流程的理解,那么在一个查询任务中会有一个或者多个Stage.每个Stage之间可能存在依赖关系。没有依赖关系的Stage可以并行执…

IIS部署应用程序连接 LocalDB 数据库

使用.net core框架创建ASP.NET Core API应用程序,利用Entity Framework core实体进行MS LocalDB数据库进行连接操作(增/删/改/查运行)。 问题: 在Visual Studio 2022 开发工具可以正常运行 Web API 应用程序连接 LocalDB 数据库…