预处理地区信息

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)

代码运行结果:

Python数据分析与处理——处理中国地区信息_标准差

首先使用pandas的read_csv()方法进行数据的读取,然后就能够看到相应的表格信息。

2.2检查重复数据

# 2.2检查重复数据

dupnum=data.duplicated()

print(dupnum)

\# 对重复值进行处理

caldup=data.drop_duplicates()

print(caldup)

代码运行结果:

Python数据分析与处理——处理中国地区信息_数据_02

主要是是使用这个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)

代码运行结果:

Python数据分析与处理——处理中国地区信息_标准差_03

使用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["女性"])

代码运行结果:

Python数据分析与处理——处理中国地区信息_编程人生_04Python数据分析与处理——处理中国地区信息_重复数据_05

3σ原则又称为拉依达准则,该准则具体来说,就是先假设一组检测数据只含有随机误差,对原始数据进行计算处理得到标准差,然后按一定的概率确定一个区间,认为误差超过这个区间的就属于异常值。

通俗理解就是正态分布。