python
文章平均质量分 56
禺垣
万世之一时,全局之一域。
展开
-
感知机模型
感知机模型(Perceptron Model)也叫做神经元模型,设计灵感即来自于生物神经元的运行机制,依次完成信息接收、处理、输出的过程。当前大放异彩的各种人工神经网络模型即由一个个人工神经元构成,因此,本文介绍的感知机模型(神经元模型)就是各种神经网络模型的基本单元。原创 2024-09-06 11:53:49 · 762 阅读 · 0 评论 -
分类模型的算法性能评价
分类模型是机器学习中一种最常见的问题模型,在许多问题场景中有着广泛的运用,是模式识别问题中一种主要的实现手段。分类问题概况起来就是,对一堆高度抽象了的样本,由经验标定了每个样本所属的实际类别,由特定算法训练得到一个分类器,输入样本属性即自动计算出其所属类别,从而完成特定的识别任务。在特定问题中,算法性能的评价是一个重要的方面,它一般由学习器在测试数据中的性能表现来直接衡定,常见的评价指标有准确率、精准度(查准率)、召回率(查全率)、F1值、ROC-AUC值、Kappa系数等。原创 2024-07-09 15:31:58 · 927 阅读 · 0 评论 -
Python缺失值处理实现
在数据处理相关工作中,读取的数据中常常会有缺失值的情况,为顺利进行后续的操作,需要首先对缺失值进行处理,处理的方式一般为**删除**或**填充**,Python中提供了专门的工具包,可以方便地进行实现。读取操作可以由pandas模块实现,通常直接读一个excel或csv文件,创建为DataFrame对象,模块中的dropna方法和fillna方法可以实现对缺失值的删除和填充。原创 2023-11-28 23:32:41 · 1630 阅读 · 0 评论 -
DBSCAN聚类
DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一种基于密度的聚类算法,簇集的划定完全由样本的聚集程度决定。聚集程度不足以构成簇落的那些样本视为噪声点,因此DBSCAN聚类的方式也可以用于异常点的检测。原创 2023-08-05 18:36:49 · 479 阅读 · 0 评论 -
常见距离计算的Python实现
常见的距离有曼哈顿距离、欧式距离、切比雪夫距离、闵可夫斯基距离、汉明距离、余弦距离等,用Python实现计算的方式有多种,可以直接构造公式计算,也可以利用内置线性代数函数计算,还可以利用scipy库计算。原创 2023-08-02 23:20:15 · 3341 阅读 · 0 评论 -
flask中在js中如何解析render_template传递给html的数据
现象说明: 在flask中通常在使用render_template渲染一个.html页面文件时,可以传入一下参数,在html源码中通过{{变量名}}的方式来调用数据,但是假如在html文件中的JavaScript中想要调用该数据变量,直接调用可能出现识别为Undefined类型的情况。问题分析: 出现上述情况是因为:经常会有字符 空格 ' "" 等被转义成其他字符,这其实是特殊字符进行转义,防止js注入 在js中可以利用tojson解决。比如:数组 num = [“ni”转载 2021-11-23 14:03:28 · 1806 阅读 · 0 评论 -
python多线程的简单使用
from threading import Timerimport timedef run1(): print(1) print(2) print(3)def run2(): print("A") print("B") print("C")if __name__ == "__main__": t1 = Timer(1, run1) #新建一个Time线程,设定启动1秒后执行函数run1 t2 = Timer(0, run2) #.原创 2021-11-23 13:43:53 · 406 阅读 · 0 评论 -
python中使用time.pref_counter()精确计时
time.pref_counter()返回一个CPU级别的精确时间值,以秒为单位。它通常用于测量某段程序的运行时间,因此取两次调用pref_counter()的差值才有意义。import timetime_start = time.perf_counter()for i in range(100000): a = 0time_end = time.perf_counter()time_consumed = time_end - time_startprint("耗费的时间: {}原创 2021-11-02 22:20:06 · 4678 阅读 · 3 评论 -
python中datetime的常用操作
datetime是用于处理日期和时间的模块,一些常用的操作可通过提供的基本函数实现。引入模块——import datetime。1.datetime转字符串——strftime()函数有两种写法:datetime.datetime.strftime(datatime对象,格式化的字符串)或datatime对象.strftime(格式化的字符串)注:若格式化的字符串中含中文,需使用format方式表示。myTime = datetime.datetime.now() # 获取系统当前时间s原创 2021-11-02 22:16:13 · 1323 阅读 · 0 评论 -
隐马尔可夫模型的解码
1.问题描述 隐马尔可夫模型(HMM)的解码问题指,给定模型和输出序列,如何找出最有可能产生这个输出的状态序列。自然语言处理中,也即如何通过观测信号确定最有可能对应的实际语义。在状态序列上,每个状态位是状态集合中的元素之一,因此该问题等价于在状态集合中的节点构成的有向网络(篱笆网络)中找出一条概率最大的路径(最优路径),如图。该问题可以通过维特比算法得到高效的解决。2.算法叙述 假设 P(st,j)P(s_{t,j})P(st,j)表示从起始时刻到st,js_{t,j}st,j的最优路径的原创 2021-11-02 21:42:58 · 1167 阅读 · 0 评论 -
维特比算法
一、概述 维特比算法是安德鲁.维特比(Andrew Viterbi)于1967年为解决通信领域中的解码问题而提出的,它同样广泛用于解决自然语言处理中的解码问题,隐马尔可夫模型的解码是其中典型的代表。无论是通信中的解码问题还是自然语言处理中的解码问题,本质上都是要在一个篱笆网络中寻找得到一条最优路径。 所谓篱笆网络,指的是单向无环图,呈层级连接,各层节点数可以不同。如图是一个篱笆网络,连线上的数字是节点间概念上的距离(如间距、代价、概率等),现要找到一条从起始点到终点的最优路径。 在实际问题中,原创 2021-10-28 21:41:56 · 2205 阅读 · 2 评论 -
Python中使用collections.Counter统计序列中元素的频率
from collections import Counterimport numpy as npls = [1, 1, 1, 2, 2, 2, 3.3, 3.3, "aa", "aa", "bb"]r = Counter(ls)# 或 r = Counter(np.array(ls))print(type(r), len(r))print(r)print("\n转化为字典:")d = dict(r)print(type(d), len(d))print(d)...原创 2021-10-27 15:56:38 · 386 阅读 · 0 评论 -
用python的pandas读取excel文件中的数据
一、读取Excel文件 使用pandas的**read_excel()**方法,可通过文件路径直接读取。注意到,在一个excel文件中有多个sheet,因此,对excel文件的读取实际上是读取指定文件、并同时指定sheet下的数据。可以一次读取一个sheet,也可以一次读取多个sheet,同时读取多个sheet时后续操作可能不够方便,因此建议一次性只读取一个sheet。 当只读取一个sheet时,返回的是DataFrame类型,这是一种表格数据类型,它清晰地展示出了数据的表格型结构。具体写法为:(原创 2021-09-13 21:06:36 · 20569 阅读 · 0 评论 -
python通过KepServer读取plc数据
KepServer是一款能够方便地对plc等工业设备进行数据读取的工具。Python可使用win32com模块实现通过kepserver读取plc数据的功能。win32com模块的安装命令:pip install pypiwin32一、运行环境1.安装Python:python3各版本均可,但必须是32位。这里使用的是python-3.7.9,windows下32位。下载:https://download.csdn.net/download/Albert201605/192630382.原创 2021-05-31 14:53:33 · 6610 阅读 · 11 评论 -
python之kepserver连接测试
python可由win32com.client模块连接kepserver,用于读取工业设备数据。连接使用的参数是opcServer名称、IP地址,连接测试程序:原创 2021-05-31 13:35:57 · 1905 阅读 · 1 评论 -
python读写mysql数据库
python对mysql数据库的连接可由 pymysql 模块实现。基本步骤:连接数据库、创建游标对象、读写操作、关闭游标、关闭连接。示例:建立一个数据库,命名python_mysqlconnect_demo,创建两张表,命名table1、table2,表结构均为1-1.插入一条数据向table1中插入记录:(1, 'name1')import pymysql# 1.连接数据库conn = pymysql.connect( host='localhost',原创 2021-05-20 11:39:07 · 865 阅读 · 1 评论 -
python通过multiprocessing并发运行多个子进程
有时需要在同一时间内同时执行多个程序,可通过multiprocessing模块实现。示例:并行创建、写入两个文件。import timeimport multiprocessingdef write_file(filename, num): target = open(filename, 'w') for i in range(1, num + 1): target.write("%d line\n" % i)if __name__ == '__main_原创 2021-05-18 16:43:35 · 512 阅读 · 0 评论 -
python之使用exec实现循环创建变量
exec可以将python语句以字符串的形式执行,因此可以在字符串外加上变量,循环地创建多个规律性的变量名称。示例:创建testname1至testname10,赋值为“value_1”至“value_10”if __name__ == '__main__': for i in range(10): exec("testname{} = 'value_{}'".format(i + 1, i + 1)) for i in range(10): ex原创 2021-05-18 16:22:09 · 2085 阅读 · 1 评论 -
使用pyinstaller将python项目打包发布为exe可执行文件
pyinstaller模块用于将python项目打包发布成exe文件,以方便地在没有安装python环境的机器上运行。该模块使用pip install pyinstaller安装即可。一、常用参数及含义参数 执行命令 含义 -D pyinstaller -D demo.py 默认选项。除了主程序demo.exe外,还会在在dist文件夹中生成很多依赖文件,推荐使用。 -c pyinstall原创 2021-05-11 16:35:25 · 1095 阅读 · 9 评论 -
Python创建目录文件夹
Python创建目录文件夹,有两个函数可实现:os.makedirs(path)、os.mkdir(path)。区别:os.makedirs(),当父目录不存在时,自动创建。os.mkdir(),当父目录不存在时,不创建,提示错误。示例:import oscreate_path = "d:\\dir_L1\\dir_L2"isExists = os.path.exists(create_path)if not isExists: os.makedirs(create_p原创 2021-05-11 11:45:22 · 1995 阅读 · 2 评论 -
python使用pyinstaller模块打包成exe文件过程中的问题核心
1.pyinstaller打包的过程,实际上它可以将程序直接依赖的包打入,但间接依赖的包无法打入,因此需要在spec文件的hiddenimports列表中填入所需的包名。2.spec文件中Analysis的第一个列表填入需要打包的.py文件路径,以字符串形式作为列表元素填入。注:a.填的路径是绝对路径,目录使用双反斜杠避开转义符;b.打包操作实质上就是将这些文件直接复制到生成的包中。3.spec文件中Analysis的datas列表填入需要打包的非.py类型资源文件,以元组形式作为列表元素填原创 2021-05-11 10:45:27 · 230 阅读 · 0 评论 -
解决Fatal error: PyInstaller does not include a pre-compiled bootloader for your platform.
使用pyinstaller打包exe时,出现“Fatal error: PyInstaller does not include a pre-compiled bootloader for your platform.”错误解决1:卸载pyinstaller,重装;解决2:新建虚拟环境。原创 2021-05-08 15:12:44 · 3367 阅读 · 1 评论 -
解决python使用multiprocessing多线程打包成exe文件后内存爆裂
python使用了multiprocessing多线程功能,然后使用pyinstaller包将程序打包成了exe文件。打开生成的exe文件后,内存爆裂。原因:开启子进程不支持打包成exe文件,会不停地向操作系统申请创建子进程,导致内存爆裂。解决:在 if __name__ == '__main__': 下面,加上 multiprocessing.freeze_support()参考1.https://www.cnblogs.com/dongxixi/p/10823228.html...原创 2021-05-07 19:02:30 · 1235 阅读 · 3 评论 -
python错误提示:OSError: [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试。
python错误提示:OSError: [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试。原因:80端口占用。解决:运行services.msc,停止SQL Server Reporting Services(MSSQLSERVER)服务。原创 2021-04-29 14:47:55 · 2388 阅读 · 0 评论 -
解决:ValueError: Buffer dtype mismatch, expected ‘SIZE_t‘ but got ‘long long‘
在加载pkl机器学习模型文件时,提示错误:ValueError: Buffer dtype mismatch, expected 'SIZE_t' but got 'long long'。原因:模型是在python-64位环境下训练保存的,加载pkl时的环境是python-32位。解决:在python-32位下重新训练、保存模型。参考https://stackoverflow.com/questions/61276774/buffer-dtype-mismatch-expected-size-t-原创 2021-04-29 14:43:14 · 3568 阅读 · 0 评论 -
pyhon中安装win32com模块
无法直接安装win32com,它有另外一个名字 ——pypiwin32。安装:pip install pypiwin32参考1.https://blog.csdn.net/qq_41703291/article/details/80433071原创 2021-04-27 18:50:49 · 1695 阅读 · 0 评论 -
使用Apache服务器部署python web过程中遇到的问题及解决方法
1. 浏览器提示Internal Server Error分析:查看Apache错误日志。日志提示:IndentationError: expected an indented block\r,即程序缺少了缩进。解决:检查程序,按照python语法,将函数体一律缩进。 重启服务器,问题解决。2.启动Apache时,控制台提示AH00526: Syntax error on。。。:Invalid command 'Order', perhaps misspelled or de..原创 2021-04-04 18:37:28 · 1298 阅读 · 3 评论 -
windows下使用Flask+wsgi+Apache部署Python Web
1 简介Flask是一个轻量级的Web应用框架,用于Python网站开发,它内置了一个微型服务器,仅用于开发和调试。在生产环境下进行正式部署的时候,需要搭建一个正式的Web服务器。部署的方式有多种,本文使用的是Flask+wsgi+Apache的方式。各部件的含义:Flask—— Python Web 应用框架;wsgi—— Web服务器网关接口(Python Web Server Gateway Interface),是为Python语言定义的Web服务器和Web应用程序或框架之间的一种简..原创 2021-04-04 16:11:36 · 1217 阅读 · 0 评论 -
Windows下使用Flask自带的服务器部署python web
Flask是一个使用 Python 编写的轻量级 Web 应用框架,它自带了一个微型Web服务器,用于开发过程中的部署调试。本文使用的开发环境是PyCharm-2017、python-3.5.4。1.新建项目flasktest,指定解释器,安装flask2.创建python文件,命名flasktest.py,写入程序from flask import Flaskapp = Flask(__name__)@app.route("/")def test(): return "&原创 2021-04-04 15:17:26 · 751 阅读 · 0 评论 -
Python的_MSC_VER版本和VC++版本的对应
安装好Python之后,cmd输入命令 python 可以直接查看_MSC_VER(微软公司推出的C/C++编译器版本号),此MSC版本号和VC++版本的对应即Python和VC++版本的对应。具体如下表Visual C++ version _MSC_VER Visual C++ 4.x 1000 Visual C++ 5 1100 Visual C++ 6 1200 Visual C++ .NET 1300 Visual C++ .NET 2003原创 2021-04-02 14:32:58 · 1280 阅读 · 0 评论 -
解决“ValueError: Expected 2D array, got scalar array instead:array=“的错误。
可能是新安装的工具包的版本问题,某次在PyCharm下运行线性回归程序时,predict处出现下列错误:根据错误提示可知,是数据维度的问题,重新调整数据格式即可。解决方法:通过numpy和reshape方法调整数据的表现格式,如x -> np.array(x).reshap(1,-1)。参考1. https://www.cnblogs.com/hankleo/p/11310272.html...原创 2021-03-03 11:08:06 · 3068 阅读 · 0 评论 -
解决Anaconda安装过程中出现的“Failed to create Anaconda menus“的错误
在Windows10下安装Anaconda3-4.4.0时,出现"Failed to create Anaconda menus"错误提示。原因:Anaconda安装过程中需要创建PATH环境变量,本机在先前安装jdk等工具包时已创建过PATH环境变量,因此,Anaconda在建立PATH目录或写入值时发生了冲突,导致安装过程出错。解决方法:将原来的PATH值复制备份,删掉PATH变量,重新安装Anaconda。安装完成后,再将原变量值加回PATH中。参考1. https://blog.cs.原创 2021-03-01 14:41:23 · 4595 阅读 · 0 评论 -
PyCharm使用笔记之同一目录下文件调用出现红线Unresolved Reference...
在PyCharm使用中,在同一个目录下通过一个文件调用另一文件时出现红线Unresolved Reference...,不过仍然可以运行。解决方法:Step1.依次进入File -> Settings-> Project ->Projece Structure -> Sources(上方工具栏);Step2.在文件目录右键 -> Sources. 此时...原创 2019-09-24 11:19:22 · 1518 阅读 · 0 评论 -
用python对训练集和测试集进行特征规范化处理
个人理解这里的规范化处理指对提取后的特征集进行处理,不是对原始的数据信号进行处理,包括归一化和标准化。规范化的原因:不同特征具有不同量级时会导致:a.数量级的差异将导致量级较大的特征占据主导地位;b.数量级的差异将导致迭代收敛速度减慢;c.依赖于样本距离的算法对于数据的数量级非常敏感。归一化:,也就是原数据减去该特征列最小值,再除以该特征列的极差,将属性缩放到[0,1]之间。标准化:,...原创 2019-09-09 21:39:10 · 11856 阅读 · 2 评论 -
python笔记:数组、列表、矩阵之间的相互转化
python中提供的基本组合数据类型有集合、序列和字典,列表属于序列类型。数组array和矩阵mat的使用需要用到numpy库,它们可以相互便捷的转化。from numpy import *#0.列表定义a1 =[[1,2,3],[4,5,6]]print('\n0.列表a1 :\n',a1)#1.列表 -----> 数组a2 = array(a1)print('...原创 2018-12-29 10:13:16 · 857 阅读 · 0 评论 -
Python错误笔记:OSError: cannot open resource
在使用wordcloud生成词云过程中,出现了OSError: cannot open resource错误,原因是字体属性font_path的设置与系统提供的字体不一致,系统提供的是ttf格式,所以应设置为ttf,而不能写为ttc.字体文件存放在 C:\Windows\Fonts目录下,可将对应的字体文件拷贝出来查看类型,将font_path设置为系统提供的字体即可。 ...原创 2018-12-09 09:49:10 · 3981 阅读 · 1 评论 -
一元线性回归python示例——房价预测
假设房价只有面积一个影响因素,根据下列数据集建立线性回归模型,并预测面积为700平方英尺的房子价格。 No square_feet price 1 150 6450 2 200 7450 3 ...原创 2018-08-23 16:58:42 · 10337 阅读 · 1 评论 -
python批量运行py 文件
os.system(command) 会执行括号中的命令,如果命令成功执行,这条语句返回0,否则返回1。例:IDE为PyCharm,当前工程目录下有test1.py,test2.py,test3.py 三个文件,现需顺序运行三个文件。方法如下:在当前目录下新建一个python文件,命名run_all.py,添加如下代码:import osos.system("python ./test1.py...原创 2018-05-18 09:00:27 · 9682 阅读 · 0 评论