vr全景网站开发,企业查询免费,南京明辉建设有限公司网站,下载建设app数据挖掘|数据集成|基于Python的数据集成关键问题处理 1. 实体识别2. 数据冗余与相关性分析3. 去除重复记录4. 数据值冲突的检测与处理5. 基于Python的数据集成5.1 merge()方法5.2 Concat()方法 数据集成是把来自多个数据库或文件等不同数据源的数据整合成一致的数据存储。其中… 数据挖掘|数据集成|基于Python的数据集成关键问题处理 1. 实体识别2. 数据冗余与相关性分析3. 去除重复记录4. 数据值冲突的检测与处理5. 基于Python的数据集成5.1 merge()方法5.2 Concat()方法 数据集成是把来自多个数据库或文件等不同数据源的数据整合成一致的数据存储。其中关键问题有实体识别、数据冗余与相关性分析、记录重复、数据值冲突的检测与处理。 1. 实体识别
实体识别主要涉及同名异义、异名同义、单位统一以及ID-Mapping等方面。
2. 数据冗余与相关性分析
为了提高数据挖掘的精度和减少数据挖掘使用的时间对多个数据源进行集成时减少数据集中的冗余和不一致是十分必要的。 如果一个属性可以由另外一个或一组属性值推导出来则这个属性可能是冗余的。 冗余是数据集成的一个重要问题有些冗余可以通过相关性分析检测出来。 对于标称数据两个属性A和B之间的相关关系可以通过 χ 2 \chi^2 χ2卡方检验发现这里不做详细介绍。 对于数值数据可以通过计算属性A和B的相关系数又称 Pearson积矩系数来分析其相关性。 用Python求相关系数的方法有三种
用numpy模块中的corrcoef()函数计算相关系数矩阵。用pandas模块中DataFrame对象自带相关性计算方法corr()可以求出所有列之间的相关系数。自己编写Python程序计算相关系数。
对于数值属性可以使用协方差来评估一个属性值如何随另一个属性值变化。在概率论和统计学中协方差Covariance是用于衡量两个变量的总体误差。而方差是协方差的一种特殊情况即为两个变量相同时的协方差。它们都是评估两个属性如何一起变化。 使用Python求协方差示例
import numpy as np
from sklearn import datasets
iris datasets.load_iris() #装载鸢尾花数据
A iris.data[:,0]
B iris.data[:,1]
resultnp.cov(A,B)
print(result)[[ 0.68569351 -0.042434 ][-0.042434 0.18997942]]3. 去除重复记录
除了检查属性的冗余之外还要检测重复的记录所谓重复记录是指给定唯一的数据实体存在两个或多个相同的记录。 Python的模块Numpy中unique()函数可以去除一维数组或者列表中的重复元素对于多维数组如果指定 axis0 , 可以把冗余的行去掉若指定 axis1 可以把冗余的列去掉。 例去掉多维数组的重复行。
import numpy as np
datanp.array([[S1,张三,女,21],[S4,李四,女,22],[S1,张三,女,21],[S5,王五,男,20]])
print(去除重复前\n,data)
resultnp.unique(data,axis0)
print(去除重复后\n,result)去除重复前[[S1 张三 女 21][S4 李四 女 22][S1 张三 女 21][S5 王五 男 20]]
去除重复后[[S1 张三 女 21][S4 李四 女 22][S5 王五 男 20]]4. 数据值冲突的检测与处理
数据集成还涉及数据值冲突的检测与处理如
对于现实世界的同一实体来自不同的数据源的属性值可能不同。相同属性的单位可能不同如公斤和磅学生成绩有百分制也有五级制等。模式不同如某大学的学生成绩数据库表中的每一行是成绩类型和相应的成绩而另一所大学学生成绩数据库表中的每一行是基本课程成绩和平时成绩还有大学的学生成绩数据库用两个表来存储学生的成绩第一个表专门存储学生的基本课程成绩第二个表专门存储学生的平时成绩。 数据值冲突的处理方法是按照一定规则建立起底层关系数据库模式的语义模型然后利用建立好的语义冲突本体来扩展关系数据库模式的语义最后再给出基于本体和数据库语义模型解决冲突的具体方法。
5. 基于Python的数据集成
针对可能来自于不同的数据源可以使用Python对数据子集进行集成处理。Pandas模块中的merge()、concat()方法可以完成数据的集成。
5.1 merge()方法
merge()方法主要是基于两个DataFrame对象的共同列进行连接。 merge()函数常用形式为 merge(left,right,how’inner’,onNone,left_onNone,right_on None, sortTrue) 例merge()函数数据集成示例。
import pandas as pd
S_infopd.DataFrame({学号:[S1,S2,S3,S4,S5],姓名:[许文,刘德,刘世,于金,周新]})
coursepd.DataFrame({学号:[S1,S2,S1,S4,S1],课程:[C2,C1,C3,C2,C4]})
dfpd.merge(S_info,course)
print(df)学号 姓名 课程
0 S1 许文 C2
1 S1 许文 C3
2 S1 许文 C4
3 S2 刘德 C1
4 S4 于金 C2#当遇到两个数据集的关键字不同时可以分别指定联结关键字
import pandas as pd
S_infopd.DataFrame({学号:[S1,S2,S3,S4,S5],姓名:[许文,刘德,刘世,于金,周新]})
coursepd.DataFrame({编号:[S1,S2,S1,S4,S1],课程:[C2,C1,C3,C2,C4]})
dfpd.merge(S_info,course,left_on学号,right_on编号)
print(左、右数据子集关键字不同的merge()函数数据集成\n,df)左、右数据子集关键字不同的merge()函数数据集成学号 姓名 编号 课程
0 S1 许文 S1 C2
1 S1 许文 S1 C3
2 S1 许文 S1 C4
3 S2 刘德 S2 C1
4 S4 于金 S4 C2#当how’outer’时函数merge()的数据集成示例。
import pandas as pd
grade1pd.DataFrame({学号:[S1,S2,S3,S4,S5],姓名:[许文,刘德,刘世,于金,周新],高数:[67,92,67,58,78],英语:[82,88,96,90,87]})
grade2pd.DataFrame({学号:[S1,S2,S4,S5,S6],数据库技术:[89,34,74,90,83]})
dfpd.merge(grade1,grade2,howouter)
print(df)学号 姓名 高数 英语 数据库技术
0 S1 许文 67.0 82.0 89.0
1 S2 刘德 92.0 88.0 34.0
2 S3 刘世 67.0 96.0 NaN
3 S4 于金 58.0 90.0 74.0
4 S5 周新 78.0 87.0 90.0
5 S6 NaN NaN NaN 83.0# merge()函数通过多个键的数据集成示例。
import pandas as pd
info_spd.DataFrame({学号:[S1,S2,S3,S4,S5],姓名:[许文,刘德,刘世,于金,周新],性别:[女,男,男,女,女]})
coursepd.DataFrame({学号:[S1,S2,S1,S3,S5,S2, S1],姓名:[许文,刘德,许文,刘世,周新,刘德,许文],课程:[C1,C1,C3,C2,C2,C3,C4], 成绩:[78,82,67,92,89,77,68]})
dfpd.merge(info_s,course,on[学号,姓名])
print(df)学号 姓名 性别 课程 成绩
0 S1 许文 女 C1 78
1 S1 许文 女 C3 67
2 S1 许文 女 C4 68
3 S2 刘德 男 C1 82
4 S2 刘德 男 C3 77
5 S3 刘世 男 C2 92
6 S5 周新 女 C2 895.2 Concat()方法
Concat()方法是对Series对象或DataFrame对象的数据集进行连接可以指定按某个轴进行行或列连接,也可以指定连接方式outer和inner。与SQL不同的是concat()不会去重要达到去重的效果可以使用drop_duplicates()方法。常用形式为 concat(objs,axis0,join’outer’) 参数说明(1) objsSeries对象、DataFrame对象或list对象。(2) axis需要连接的轴axis0是行连接axis1是列连接。(3) join连接的方式inner或outer。 #Concat()方法连接示例
import pandas as pd
data1[[S1,许文,女],[S2,刘德,男],[S3,刘世,男],[S4,于金,女],[S5,周新,女]]
df1pd.DataFrame(data1,columns[学号,姓名,性别])
data2[[78,89,80,61],[77,83,78,66],[90,54,68,78],[76,66,80,82]]
df2pd.DataFrame(data2,columns[高数,英语,数据库技术,数据挖掘])
dfpd.concat([df1,df2],axis1,joinouter)
print(df)学号 姓名 性别 高数 英语 数据库技术 数据挖掘
0 S1 许文 女 78.0 89.0 80.0 61.0
1 S2 刘德 男 77.0 83.0 78.0 66.0
2 S3 刘世 男 90.0 54.0 68.0 78.0
3 S4 于金 女 76.0 66.0 80.0 82.0
4 S5 周新 女 NaN NaN NaN NaN
文章转载自: http://www.morning.zjqwr.cn.gov.cn.zjqwr.cn http://www.morning.znmwb.cn.gov.cn.znmwb.cn http://www.morning.xzqzd.cn.gov.cn.xzqzd.cn http://www.morning.bcdqf.cn.gov.cn.bcdqf.cn http://www.morning.rltw.cn.gov.cn.rltw.cn http://www.morning.qfdmh.cn.gov.cn.qfdmh.cn http://www.morning.gtbjc.cn.gov.cn.gtbjc.cn http://www.morning.nlkm.cn.gov.cn.nlkm.cn http://www.morning.nhlyl.cn.gov.cn.nhlyl.cn http://www.morning.dbtdy.cn.gov.cn.dbtdy.cn http://www.morning.khtjn.cn.gov.cn.khtjn.cn http://www.morning.shuangxizhongxin.cn.gov.cn.shuangxizhongxin.cn http://www.morning.pmhln.cn.gov.cn.pmhln.cn http://www.morning.ckzjl.cn.gov.cn.ckzjl.cn http://www.morning.zynjt.cn.gov.cn.zynjt.cn http://www.morning.vibwp.cn.gov.cn.vibwp.cn http://www.morning.trkl.cn.gov.cn.trkl.cn http://www.morning.dzgmj.cn.gov.cn.dzgmj.cn http://www.morning.lxwjx.cn.gov.cn.lxwjx.cn http://www.morning.sbkb.cn.gov.cn.sbkb.cn http://www.morning.kwdfn.cn.gov.cn.kwdfn.cn http://www.morning.jopebe.cn.gov.cn.jopebe.cn http://www.morning.plfy.cn.gov.cn.plfy.cn http://www.morning.rkqqf.cn.gov.cn.rkqqf.cn http://www.morning.knpmj.cn.gov.cn.knpmj.cn http://www.morning.bsrp.cn.gov.cn.bsrp.cn http://www.morning.fdjwl.cn.gov.cn.fdjwl.cn http://www.morning.ssqwr.cn.gov.cn.ssqwr.cn http://www.morning.lfdmf.cn.gov.cn.lfdmf.cn http://www.morning.xkppj.cn.gov.cn.xkppj.cn http://www.morning.sjbpg.cn.gov.cn.sjbpg.cn http://www.morning.czzpm.cn.gov.cn.czzpm.cn http://www.morning.tbplf.cn.gov.cn.tbplf.cn http://www.morning.kwqqs.cn.gov.cn.kwqqs.cn http://www.morning.hdlhh.cn.gov.cn.hdlhh.cn http://www.morning.jbctp.cn.gov.cn.jbctp.cn http://www.morning.nnmnz.cn.gov.cn.nnmnz.cn http://www.morning.wqjpl.cn.gov.cn.wqjpl.cn http://www.morning.hlhqs.cn.gov.cn.hlhqs.cn http://www.morning.sooong.com.gov.cn.sooong.com http://www.morning.ghxkm.cn.gov.cn.ghxkm.cn http://www.morning.mwnch.cn.gov.cn.mwnch.cn http://www.morning.mydgr.cn.gov.cn.mydgr.cn http://www.morning.pfnwt.cn.gov.cn.pfnwt.cn http://www.morning.gwkwt.cn.gov.cn.gwkwt.cn http://www.morning.gassnw.com.gov.cn.gassnw.com http://www.morning.wmsgt.cn.gov.cn.wmsgt.cn http://www.morning.rnngz.cn.gov.cn.rnngz.cn http://www.morning.nswcw.cn.gov.cn.nswcw.cn http://www.morning.ghgck.cn.gov.cn.ghgck.cn http://www.morning.ykmg.cn.gov.cn.ykmg.cn http://www.morning.xpzgg.cn.gov.cn.xpzgg.cn http://www.morning.ggnfy.cn.gov.cn.ggnfy.cn http://www.morning.cptzd.cn.gov.cn.cptzd.cn http://www.morning.mcjxq.cn.gov.cn.mcjxq.cn http://www.morning.epeij.cn.gov.cn.epeij.cn http://www.morning.sdecsd.cn.gov.cn.sdecsd.cn http://www.morning.wgrm.cn.gov.cn.wgrm.cn http://www.morning.smwlr.cn.gov.cn.smwlr.cn http://www.morning.rccpl.cn.gov.cn.rccpl.cn http://www.morning.fbmzm.cn.gov.cn.fbmzm.cn http://www.morning.pfntr.cn.gov.cn.pfntr.cn http://www.morning.rmfwh.cn.gov.cn.rmfwh.cn http://www.morning.i-bins.com.gov.cn.i-bins.com http://www.morning.zxhpx.cn.gov.cn.zxhpx.cn http://www.morning.ttshf.cn.gov.cn.ttshf.cn http://www.morning.qfwzm.cn.gov.cn.qfwzm.cn http://www.morning.zljqb.cn.gov.cn.zljqb.cn http://www.morning.tjkth.cn.gov.cn.tjkth.cn http://www.morning.dswtz.cn.gov.cn.dswtz.cn http://www.morning.yxyyp.cn.gov.cn.yxyyp.cn http://www.morning.sfrw.cn.gov.cn.sfrw.cn http://www.morning.rkmhp.cn.gov.cn.rkmhp.cn http://www.morning.frfnb.cn.gov.cn.frfnb.cn http://www.morning.gxqpm.cn.gov.cn.gxqpm.cn http://www.morning.krdmn.cn.gov.cn.krdmn.cn http://www.morning.nwclg.cn.gov.cn.nwclg.cn http://www.morning.hilmwmu.cn.gov.cn.hilmwmu.cn http://www.morning.cwqln.cn.gov.cn.cwqln.cn http://www.morning.jfbrt.cn.gov.cn.jfbrt.cn