随笔分类 -  Python

关于Python中所遇到的问题
摘要:在学习李航老师的《统计学习方法》中,我用Python编写了SVM的SMO算法。但在编写完成后发现目标函数总是停留在某一个值不再下降,仔细调试发现,每次选择变量时总是选择同一变量,虽然按照计算可以找到使目标函数下降的新值,但是被范围限制约束后又变回之前的值。所以算法总是在这个值上循环。我修改算法,迫使 阅读全文
posted @ 2017-11-13 09:23 上官栋 阅读(733) 评论(0) 推荐(0) 编辑
摘要:在分类和聚类运算中我们经常计算两个个体之间的距离,对于连续的数字(Numric)这一点不成问题,但是对于名词性(Norminal)的类别,计算距离很难。即使将类别与数字对应,例如{‘A’,‘B’,‘C’}与[0,1,2]对应,我们也不能认为A与B,B与C距离为1,而A与C距离为2。独热编码正是为了处 阅读全文
posted @ 2017-11-01 16:48 上官栋 阅读(10900) 评论(0) 推荐(0) 编辑
摘要:我的python是3.6,目前pyinstaller并不支持,有网友建议在Github上下载源码,用pyinstaller_develop文件夹替换pyinstaller安装位置下同名文件夹。这样做之后依然生成失败,虽然可以得到exe文件,但执行出错。分析错误提示后,发现我的问题很特殊,如果你的问题 阅读全文
posted @ 2017-10-25 11:21 上官栋 阅读(1972) 评论(0) 推荐(0) 编辑
摘要:我们知道在同一widget组件中的radio button有排他属性,为了在一个窗口中显示多组radio button,我们需要对其分组。 通常有两种选择,一种是BoxGroup,另一种是ButtonGroup。建议采用ButtonGroup,因为BowGroup会在界面上显示一个类似文本框的东西, 阅读全文
posted @ 2017-10-21 21:48 上官栋 阅读(7406) 评论(0) 推荐(0) 编辑
摘要:定义一个信号源有4个方面要注意: 1.定义信号源 这里特别使用信号源重载的情况加以说明。如上就是信号源A的重载,一个可以发送str参数,另一个可以发送(int,str)参数。注意这相当于声明了两个同名但参数不同的信号源。 2.链接“槽”, 对于重载的信号源,A之后的[int,str]是必须的,一旦忽 阅读全文
posted @ 2017-10-09 21:27 上官栋 阅读(1157) 评论(0) 推荐(0) 编辑
摘要:mayavi在显示数据的过程中需要调用PyQt4的GUI方法产生应用框架。但是新发布的PyQt5和PyQt4在很多方面都是不兼容的,这也就导致了用mayavi编写的程序运行失败。在实践之后,我的解决方案是使用PySide代替PyQt4来为mayavi库提供框架。而PyOt5的编写不受影响。 我的环境 阅读全文
posted @ 2017-10-09 17:46 上官栋 阅读(1050) 评论(1) 推荐(0) 编辑
摘要:我安装的是PyQt5的5.9版本,在安装目录下找不到designer.exe文件。在摸索一段后发现5.9版本对库文件和相关的开发工具是分开发布的。QtDesigner是在pyqt5-tools的包里。用pip或者PyCharm的安装工具都可以找到相应的包。 附上pyqt5-tools链接:https 阅读全文
posted @ 2017-10-09 11:28 上官栋 阅读(9630) 评论(0) 推荐(0) 编辑
摘要:numpy的数组操作方便,可以用:来切片,用布尔数组或者布尔表达式来查找符合条件的数据,也可以用数组作为另一个数组的索引来查找指定的数据。但有时也会见到数组索引为-1和None。两者的用法如下: 1.-1指定维度上的最后一个。例如shape为(3,3)的数组data,data[2,-1]等同于dat 阅读全文
posted @ 2017-09-27 17:38 上官栋 阅读(5109) 评论(0) 推荐(0) 编辑
摘要:1.首先检查两个矩阵维数是否相同,若不同,对维数少的补一。注意这里的维数不是指n行d列中的n和d的值,对于一般的矩阵维数就是2。若一个两维的矩阵(n,d)和一个一维的数组(m,)相乘,补一操作就是将那个一维的数组变为(1,m),补一总是在shape数组的开始补一。 2.输出数组是输入数组各维度(轴) 阅读全文
posted @ 2017-09-27 10:04 上官栋 阅读(752) 评论(0) 推荐(0) 编辑
摘要:在使用PCA和NFC中有三个函数fit,fit_transform,transform区分不清各自的功能。通过测试,勉强了解各自的不同,在这里做一些笔记。 1.fit_transform是fit和transform的混合,相当于先调用fit再调用transform。 2.transform函数必须在 阅读全文
posted @ 2017-09-14 22:01 上官栋 阅读(7221) 评论(1) 推荐(0) 编辑
摘要:使用subplots_adjust一般会传入6个参数,我们分别用A,B,C,D,E,F表示。然后我们对图框建立坐标系,将坐标轴原点定在左下角点,并将整个图框归一化,即横纵坐标都是0到1之间。从下图中可以看出前四个参数所代表的距离 A,B可以理解是图像左下角点的坐标,C,D可以理解为图像右上角点的坐标 阅读全文
posted @ 2017-09-14 20:23 上官栋 阅读(9181) 评论(0) 推荐(0) 编辑
摘要:一开始安装VTK库是从官网上下载,但是怎么都找不到whl文件,只有exe文件(vtkpython-7.1.1-Windows-64bit.exe)。下载安装之后再PyCharm中import vtk出错。当时认为是文件出错。后来在一篇博客(Python下VTK 编程 - lj695242104的专栏 阅读全文
posted @ 2017-09-11 21:54 上官栋 阅读(3484) 评论(0) 推荐(0) 编辑