(
课件网) 5.3-1 特征探索 数据的特征探索 系统日志采集法 网络数据采集法(网络爬虫) 其他数据采集法 0.数据分析的步骤 【练习一】阅读教材P111,思考下列问题: 数据分析的作用是: 探索数据内在的结构和规律,构建教学模型,并进行可视化表达 通过验证将模型转化为知识,为预测诊断过去、预测未来发挥作用 数据分析的常用方法有: 特征探索 关联分析 聚类分析 数据分类 建立模型 模型评价 一、数据分析的作用 二、特征探索 数据预处理———数据特征探索 数据清洗:利用散点图发现并处理缺失值、异常值、重复值 求最大、最小、极差等描述性统计量 绘制直方图 观察分析数据的分布特征 二、特征探索 数据预处理———数据特征探索 利用散点图发现和处理缺失数据、异常数据、重复数据 1.重复值处理 重复值一般采取删除法来处理 但有些重复值不能删除,例如订单明细数据或交易明细数据等 2.缺失值处理:需要根据实际情况定义 可以采取直接删除法 有时候需要使用替换法或者插值法 常用的替换法有均值替换、前向、后向替换和常数替换 二、特征探索 数据预处理———数据特征探索 利用散点图发现和处理缺失数据、异常数据、重复数据 3.异常值处理 指那些偏离正常范围的值,不是错误值 异常值出现频率较低,但又会对实际项目分析造成偏差 一般用过箱线图法(分位差法)或者分布图(标准差法)判断异常值 异常值往往采取盖帽法或者数据离散化 二、特征探索的过程 1.创建MySQL数据库 启动本地web服务和数据库服务 创建数据库 创建数据表 导入数据 #导入数据 conn=pymysql.connect(host=“127.0.0.1”,user=“root”,passwd=“”,db=“taobao”) sql=“select * from taobao” #编写SQL语句 data=pda.read_sql(sql,conn) #执行SQL语句,从数据库中导入名为taobao的表 数据库的IP地址 127.0.0.1 user=“root” :用户名为root passwd=“”:无密码 db=“taobao”:数据库的名字 2.数据清洗:发现并处理缺失值 二、特征探索的过程 #1.首先把价格为零的数据变为空值,将缺失值修改为36 x=0 data["price"][(data["price"]==0)]= None for i in data.columns: for j in range(len(data)): if(data[i].isnull())[j]: #如果为空值,即为True data[i][j]=“36“ #将缺失值用36代替 x+=1 print(x) 把价格为零的数据变为空值 二、特征探索的过程 # 画散点图(横轴为价格,纵轴为评论数) # 获得价格 data2 = data.T price = data2.values[2] # 获得评论数: comt = data2.values[3] plt.xlabel('price') #显示X坐标标签 plt.ylabel('paynum') #显示Y坐标标签 pyl.plot(price, comt, 'o') pyl.show() 价格 评论数 2.数据清洗:用散点图发现异常值部分 二、特征探索的过程 # 异常值处理:评论数异常为>200000;价格异常为>2300; line = len(data.values) col = len(data.values) da = data.values for i in range(0, line): for i in range(0, col): if(da[i][2]>2300): #如果价格大于2300,则修改为36 da[i][2] = "36" if(da[i][3]>"200000"): #如果价格大于200000,则修改为58 da[i][j] = "58" 2.数据清洗:用散点图处理异常值部分 二、特征探索的过程 # 画散点图,查看异常值处理后的数据: da2 = da.T #da = data.values price = da2[2] comt = da2[3] plt.xlabel('price') #显示X坐标标签 plt.ylabel('paynum') #显示Y坐标标签 pyl.plot(price, comt, 'o') pyl.show() 2.数据清洗:用散点图显示异常值处理后的数据 二、特征探索的过程 3.求最大值、最小值、极差、组距等描述性统计量 #求最值 pricemax=da2[2].max() pricemin=da2[2].min() paynummax=da2[3].max() paynummin=da2[3].min ... ...