标称型数据和数值型数据
机器学习中的监督学习过程中,只需要给定输入样本(已知正确答案的实例来训练网络),网络就可将目标值的可能预测结果给出。监督学习常用的数据类型有两种:数值型和标称型
数值型:可以从无限的数值集合中取值。常用于回归分析
标称型:只能从无线 的数值集合中取值。常用于分类
决策树
![](https://img.haomeiwen.com/i4449157/d5b7fae37b2f29fb.jpg)
决策树是依据数据中的某个属性划分的,而该属性的选择能够使得我们获得最大的信息增益。
信息熵 决定信息增益
Python实现香农信息熵
![](https://img.haomeiwen.com/i4449157/2a03d613289cdef9.jpg)
从这里可以看出,决策树的数据类型必须得是标称型的数据,否则会报错。将DataFrame转换成一个字典型的list后
python中key 函数
![](https://img.haomeiwen.com/i4449157/4440f2cd1f23bd45.jpg)
value查key的几点说明,
![](https://img.haomeiwen.com/i4449157/9fe54e7658939667.jpg)
keys函数是Python的字典函数,它返回字典中的所有键所组成的一个可迭代序列。使用keys()可以获得字典中的所有键。
![](https://img.haomeiwen.com/i4449157/78cdd3377054ad0f.jpg)
1.若需要由value查keys先需要列出所有的键出来list(student.keys())
2.通过定义get_key函数的方式
![](https://img.haomeiwen.com/i4449157/10b0af54382393c5.jpg)
最容容易忽略的是1002 字符串的引号。
python读写文件操作
python读取json文件
![](https://img.haomeiwen.com/i4449157/09e67294993fabe1.jpg)
python读写文件中能够更加简洁的使用close函数
![](https://img.haomeiwen.com/i4449157/f740b4cb1e291ca8.jpg)
为了避免冗余代码,try..finally读取文件更加简洁:
![](https://img.haomeiwen.com/i4449157/fab7f5eac7c84486.jpg)
如果是配置文件,调用 readlines()最方便: for line in f.readlines(): print(line.strip())
![](https://img.haomeiwen.com/i4449157/9729341161b0e76a.jpg)
调用 readline()可以每次读取一行内容,调用 readlines()一次读取所有内容并按行返回 list。
注意:以上均是含有字符编码的,若读取的为非UTF-8编码,则需要给encoding传入其他的参数。
python写文件
写入文件的附加模式:
保存数据的最简单的方式之一是将其写入到文件中。
![](https://img.haomeiwen.com/i4449157/e4e199f55080a187.jpg)
![](https://img.haomeiwen.com/i4449157/65897226a60b0a16.jpg)
调用open()时提供了两个实参。第一个实参也是要打开的文件的名称;第二个实参("w")告诉Python,我们要以写入模式打开这个文件。打开文件时,可指定读取模式('r')、写入模式('w')、附加模式('a')或者让我们能够读取和写入文件的模式('r+').如果我们省略了模式实参,Python将以默认的只读模式打开文件。
读取和写入文件有两种方法,一种是with语句打开文件;另一种是open()和close()结合使用打开和读取文件。
我们要知道我们打开文件是做什么如果只是单纯的打开和读取文件,只需要open()即可;要是写入的话,就需要指定第二参数。默认省略参数的情况下是只读模式的。
写入的方式
(1)写入模式('r')
(2)附加模式('a')
with open('json/company.json','a') as f:
f.write("这是不是一家公司名?\n")
写入模式('r')和附加模式('a')都是向文件中写入内容,不同的是('r')写入模式要覆盖之前文件里面的内容,('a')写入运行一次重复一次写入。
如果我们要写入的文件不存在,函数open()将自动创建它。然而,以写入('w')模式打开文件时千万要小心,因为如果指定的文件已经存在,Python
将在返回文件对象前清空该文件。所以使用写入模式('w')的时候一定要小心。
修改代码:
根据以上修改读取json文件的源代码,读取cardiologist论文中所提及的json类型的数据文件。
在csdn下载源代码:
![](https://img.haomeiwen.com/i4449157/6f7ca039f742d069.jpg)
读取后的结果得到:
![](https://img.haomeiwen.com/i4449157/a153277e53a09c8e.jpg)
![](https://img.haomeiwen.com/i4449157/54f746f088aad305.jpg)
从结果中得到ECG_ID、win_start_time、reviewer——id、start——time 三项数据值 。
下周任务⑴思考如何将整个文件中的json文件一起读取出来json的数据在后期的训练算法中哪些是具有主要作用的。
⑵使用WFDB读取原始的ECG数据
⑶ 读懂cardiologist论文中的源代码
⑷ 朴素贝叶斯、K均值、PCA
网友评论