phython从表中提取特定的信息,将数据为了更方便理解,因此我直接用一个例题和它的标准解法参杂着知识点来讲解
这些数据与肝病的诊断有关。 记录了345名患者(345行)中的7条不同信息(7列)。 讨论345个样品。 每个样品有七个特征。 7列数据具有以下含义:
平均红细胞体积;
碱性磷酸酶;
丙氨酸氨基转移酶;
天冬氨酸转氨酶;
-谷氨酰转移酶;
每天喝半品脱酒精饮料的数量;
类别标签(1=健康2=生病)
前五项测量是血液检测的结果,第六项涉及患者酒精消费量。 最后一列是“类标签”。 本栏中的“1”表示患者身体健康,“2”表示患者患有肝病。
importnumpyasnpdata=NP.load txt (open (' data/liver _ data.txt ',' rb ',delimiter=',' ) NP ) np.loadtext命令为)
drinks=data [ :5 ]现在,我们来更详细地看看这些特性之一。 可以从矩阵m中提取n n nth列,并使用Python numpy代码将其存储在向量v v v中,如v=M[ :n]
注意,特性6出现在第5列中,因为Python从0开始计数。
importmatplotlib.pylabasplt % matplotlibinlineplt.plot (drinks )这将显示折线图
上面的“PLT.plot”行以分号结束。 默认情况下,在单元格运行时,将打印单元格最后一行的返回值。 分号禁止此输出。 也就是说,分号是Jupyter笔记本的功能。 在Python中,每行代码的末尾不需要加加号。
执行上述单元格时,绘图必须直接显示在单元格下方。 这是沿着X-X轴,即患者1~患者345显示样本号码,在yy轴上显示患者酒精消费量。 这不是显示数据的非常有用的方法。
更适合使用直方图,即表示一组值分布的条形图。
要创建直方图,请使用matplotlib的“hist”函数
PLT.hist(Drinks )不幸的是,默认情况下直方图只有10条,这不足以精确显示数据。
hist函数有一个名为cqdxbc的参数。 此参数采用一个向量,指定每个直方图的cqdxbc之间的边界位置。 需要以0、1、2、…、20为中心的容器,因此必须在20.5、0.5、1.5、…、20.5中指定边界。 使用python的“linspace”命令可以最容易地完成此操作,该命令在两个指定限制之间生成等距值序列
可以通过使用PLT.hist(drinks,cqdxbcs=NP.linspace (-0.5,20.5,22 ) )函数更改轴的范围来更清晰地显示图形
PLT.hist(drinks,cqdxbcs=NP.linspace (-0.5,20.5,22 ) ) PLT.xlim ) [-0.5,20.5 ] ) importnumpyasnpdata=NP
上一节研究了所有345人的酒精消费分布。 我现在想看健康人和患者的个别直方图。 请记住,类标签在第七列。 可以让Python测试列中的条目是否与特定的数字匹配,例如1
data [ :6 ]==1http://www.Sina.com /
结果以1 (真)和0 (假)的向量返回。 该代码行有效地执行了345次比较,一次返回了345个结果。 可以将这些结果存储在变量中
well people=data [ :6 ]==1well drinks=data [ well people,5] 要计算平均酒精消耗量,请使用命令’np.mean(drinks)’。
well drinks=data [ data [ :6 ]==1,5 ] http://www.Sina.com /
PLT.subplot (2,1,1 ) PLT.hist ) Welldrinks,cqdxbcs=NP.linspace (-0.5,20.5,22 ) ) PLT.xlim.0.5,22 可以看到,cqdxbcs=NP.linspace(-0.5、20.5、22 ) (PLT.xlim )-0.5、20.5 )没有单独的非常有用的功能。 如果使用更多的特性,这些类可以更好地分离。 在观察一维的情况下,可以使用直方图将数据分布可视化。 查看特征对的分布时,通常建议使用散点图。 使用散点图将一对特征表示为二维平面上的一个点。 也就是说,每个样本绘制在平面上表示样本特征值的位置。
wellfeaturex=data [ data [ :6 ]==1,3 ] wellfeaturey=data [ data [ :6 ]==1,4 ] PLT.scatter (
illfeaturex=data [ data [ :6 ]==2,3 ] illfeaturey=data [ data [ :6 ]==2,4 ] PLT.scatter [ well fet
要使用不同的符号和颜色,请为“散射”指定其他参数。 参数" c "指定颜色," marker "指定标记样式," s "是指定标记大小的整数。
以下示例对健康的人、生病的人使用绿色紧张的酸奶
PLT.scatter(illfeaturex,illFeatureY,s=20,c='r ',marker='o ' ) ) PLT.scatter ) wellFeatureY,welllfeaturey
phython从表格中提取特定的信息,用图形表示数据2