Python数据分析与处理(二)——处理中国地区信息
作者:a Fang
这篇文章主要介绍了Python数据分析与处理-处理中国地区信息,上文介绍了北京高考分数线统计分析,这篇文章依然围绕Python数据分析与处理的相关资料来介绍处理中国地区信息,需要的朋友可以参考一下
2.1数据的爬取
代码:
import pandas as pd data=pd.read_csv("example_data.csv",header=1) print(data) data1=pd.read_csv("北京地区信息.csv",header=1,encoding='gbk') data2=pd.read_csv("天津地区信息.csv",encoding='gbk') print(data1) print(data2)
代码运行结果:
首先使用pandas
的read_csv()
方法进行数据的读取,然后就能够看到相应的表格信息。
2.2检查重复数据
dupnum=data.duplicated() print(dupnum) \# 对重复值进行处理 caldup=data.drop_duplicates() print(caldup)
代码运行结果:
主要是是使用这个duplicated()
方法进行数据的查重,返回一个布尔序列,仅对唯一元素而言为True
。如果有重复的数据就会在该数值的部分返货Flase
。
然后我们就可以使用drop_duplicates()
进行重复值删除。
2.3检查缺失值
代码:
from pandas import Series from numpy import NAN \# import pandas as pd series_obj=Series([1,None]) pd.notnull(series_obj) \# 上面做的是测试 pd.notnull(data) pd.notnull(data1) pd.notnull(data2)
代码运行结果:
使用pd.notnull(data1)
进行非空数值的返回, 返回值是布尔型的矩阵,再取df[布尔型矩阵]返回的是id为非空的行。
2.4 检查异常值
import numpy as np \# 2.4 检查异常值 def three_sig(ser1): mean_value=ser1.mean() \# 标准差 std_value=ser1.std() \# 位于3σ范围外的都是异常值 \# 数值大于u+3σ小雨u-3σ rule=(mean_value-3*std_value>ser1)|(ser1.mean()+3*ser1.std()<ser1) index=np.arange(ser1.shape[0])[rule] outrange=ser1.iloc[index] return outrange three_sig(data2["女性"])
代码运行结果:
3σ原则又称为拉依达准则,该准则具体来说,就是先假设一组检测数据只含有随机误差,对原始数据进行计算处理得到标准差,然后按一定的概率确定一个区间,认为误差超过这个区间的就属于异常值。
通俗理解就是正态分布。
到此这篇关于Python数据分析与处理--处理中国地区信息的文章就介绍到这了,更多相关Python Python数据分析与处理内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!