![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
阿袁的小园子
这个作者很懒,什么都没留下…
展开
-
python读取json格式的文件
其实就是用open读取文件,然后进行一个循环,并在每个循环里边用json.loads()把每个json转成字典。原创 2022-12-18 00:40:21 · 837 阅读 · 0 评论 -
python绘制折线图并保存
1.下面这部分代码是绘图并保存的代码。原创 2022-07-20 11:34:07 · 3924 阅读 · 0 评论 -
python读取某目录下指定后缀的所有文件
参考文章:1.https://blog.csdn.net/weixin_36670529/article/details/107208026原创 2022-07-11 17:15:56 · 2121 阅读 · 0 评论 -
python3.7实现给命令行参数传入多个值
比如想设置个参数,它可以接收多个整数值,那么可以在add_argument中设置action=“append”调用方式及结果如下:python3.8中还可以用action=“extend”,这样就不需要挨个值前面都跟一个–arg_name了,具体可查看https://docs.python.org/3.9/library/argparse.html#action参考文章:1.https://blog.csdn.net/qq_38962621/article/details/110579156.....原创 2022-07-03 16:25:32 · 1819 阅读 · 0 评论 -
使用nltk下的wordnet包时报错zipfile.BadZipFile: File is not a zip file
如果是手动下载并解压的,需要在以下目录中任选一个新建corpora文件夹,然后把解压后的wordnet文件夹放到corpora文件夹中:如果是在代码里用nltk.download(“wordnet”)下载的,可能是因为各种原因下载出错了,没有下载完整,因此只需要在代码里再跑一次download就行...原创 2022-06-22 15:49:11 · 1170 阅读 · 0 评论 -
基于numpy的CNN实现,进行MNIST手写数字识别
主要框架来自于这篇文章:https://blog.csdn.net/qq_36393962/article/details/99354969,下面会以原文来代称这篇文章本文在原文的基础上增加了交叉熵以及mnist数据集的处理,并对卷积层反向传播更新权重的代码进行了一些相应的改动。建议先按原文脉络学习一下相关理论知识(原文讲的非常完整详细,但是个人感觉卷积层反向传播更新参数那部分有问题,卷积层更新参数的原理可参考刘建平前辈的文章),再参考下述实现代码。文章目录零、MNIST数据集读取+layer模板代码一原创 2022-05-31 12:19:40 · 1779 阅读 · 7 评论 -
用Bert做英法机器翻译
过程基本参考自BERT实战——(5)生成任务-机器翻译,结合我个人的数据集在数据处理部分做了些调整,完整代码可见translate.ipynb一、数据处理我的数据集是这样的:第一列是英文,第二列是对应的法文翻译,第三列是文本来源,所以说第三列是不需要的1.首先是读取数据,把前两列存入数组中,并把前90%的数据作为训练集,后10%的数据作为验证集f=open("fra.txt","r",encoding="utf-8").readlines()en=[]fre=[]data=[]for l原创 2022-05-19 23:41:01 · 3438 阅读 · 4 评论 -
用mindspore定义一个双层神经网络拟合抛物面
mindspore(后文简称为ms)目前网上的使用者以及文章太少了,对于像我这种没有阅读官方文档的人来说属实有点不易,这里记录一下我用mindspore实现单层和双层神经网络拟合抛物面的代码。详细代码在https://github.com/yuanzilin/PatternRecognition/tree/main/lab4中的BP_mindspore.ipynb中一、简化版流程主要有5个步骤:1.定义网络结构2.定义损失函数3.定义反向传播网络4.开始训练5.用训练完成的模型对测试集进行推原创 2022-05-13 18:17:57 · 424 阅读 · 0 评论 -
python绘制三维散点图
和二维的区别主要在于要从mpl_toolkits.mplot3d中载入Axes3D,并用Axes3D来绘制图形import numpy as npimport matplotlib.pyplot as pltfrom mpl_toolkits.mplot3d import Axes3Ddata=np.random.randint(0,27,(9,3))x=data[:,0]y=data[:,1]z=data[:,2]fig=plt.figure()ax=Axes3D(fig)ax.s原创 2022-05-10 13:13:29 · 11477 阅读 · 0 评论 -
python实现两个数组同时排序
用numpy.argsort函数import numpy as npa=[1,2,3,6,5,4]b=["one","two","three","six","five","four"]b=np.array(b)sorted_indices=np.argsort(a)print(sorted_indices)sorted_b=b[sorted_indices]print(sorted_b)运行结果:参考链接:1.https://blog.csdn.net/junlee87/artic原创 2022-05-05 01:01:38 · 2029 阅读 · 0 评论 -
python实现GRU并使用torch.nn.GRU验证正确性
用python基本语法以及torch的一些基本数据结构对GRU进行实现如下:import torchimport torch.nn as nnbs,T,i_size,h_size=2,3,4,5input=torch.rand(bs,T,i_size)h_0=torch.rand(bs,h_size)gru=nn.GRU(i_size,h_size,batch_first=True)output,h_n=gru(input,h_0.unsqueeze(0))print(output)原创 2022-04-26 10:41:37 · 1259 阅读 · 1 评论 -
python实现单层单向LSTM
用python的基本语法以及pytorch的一些数据结构实现LSTM,并用torch.nn.LSTM对我自己实现的网络的正确性进行验证,参考自https://www.bilibili.com/video/BV1jm4y1Q7uh/?spm_id_from=333.788bs,T,i_size,h_size=2,3,4,5input=torch.rand([bs,T,i_size])h_0=torch.rand(bs,h_size)c_0=torch.rand(bs,h_size)# 用官方的原创 2022-04-26 09:40:27 · 454 阅读 · 0 评论 -
python实现单层单向RNN
为了解torch.nn.RNN的算法过程,用python简单实现了一个单层单向的RNN:# input:输入数据,形状为sequence_length*feature_size# hidden_szie:隐藏层的特征数# wih:输入层到隐藏层的权重值,形状为hidden_size*feature_size# bih:输入层到隐藏的偏置值,形状为1*hidden_size# whh:h[t-1]到h[t]的权重值,形状为hidden_size*hidden_size# bhh:h[t-1]到h[原创 2022-04-19 19:09:04 · 1024 阅读 · 0 评论 -
用SVR拟合圆
一、 实验原理SVR与SVM不同,SVR的样本点只有一类,它的目标是使得所有样本点到最优超平面的总偏差最小,而SVM的目标是让所有样本点到最优超平面的距离最大。求圆的圆心和半径时,先把非线性问题转成线性问题:因此本实验的优化目标为:约束条件为:其中ξ是松弛因子,ε为点到圆的距离偏差。转换成拉格朗日函数为:通过对拉格朗日核心因子(w,m,ξi+,ξi-)进行梯度下降,以及对拉格朗日乘子(αi+,αi-,βi+,βi-)进行梯度上升,即可得到最优的圆。二、 实验过程1. 读取数据im原创 2022-04-12 15:33:51 · 765 阅读 · 0 评论 -
初次使用GPU,遇到的一些cuda error及解决办法
1.GPU RuntimeError: CUDA error: invalid device ordinal解决办法:可能是在程序的多个地方都定义了使用的cuda编号,即使编号是一样的也会报这样的错误。解决办法是只保留一个2.使用os.environ['CUDA_VISIBLE_DEVICES'] = 'x'指定使用的GPU编号后,实际使用时还是0号GPU解决办法:把这个语句用到所有需要加载参数、数据的语句前,最方便的就是在import各种包时顺便用os.environ[‘CUDA_VISIBLE_D原创 2022-04-02 23:46:35 · 5714 阅读 · 3 评论 -
python合并某个文件夹下面的所有文件
需要把以下3个文件合并成一个大文件用的一个比较简单直接的方法,就是一行行地读写进去import pandas as pdimport os,globall_files=glob.glob(os.path.join(path,"201*.csv"))print(len(all_files))for i in all_files: fr=open(i,'rb').read() with open('result.csv','ab') as f: f.write(fr原创 2021-10-06 01:05:44 · 857 阅读 · 0 评论 -
vscode打开python项目后载入自定义模块时显示ModuleNotFoundError: No module named ‘XXX‘
由于pycharm的学生认证过期了,于是今天转到vscode上了废话不多说,进入正题1.找到当前所使用的python解释器的路径,比如我的是下面这个2.进入这个目录下的/Lib/site-packages目录下,新建一个.pth文件,具体名字可以自己起,比如easy-install.pth,如果这个路径下已经有pth文件了直接用记事本打开编辑即可3.在新建的.pth文件中写入当前python项目的路径,像这样大功告成!最后要注意的是,Python解释器的路径一定要确认清楚,不然很可能做无用功原创 2021-09-11 21:24:06 · 1957 阅读 · 1 评论 -
在python程序中运行带参数的exe文件
参考文章:python中3种调用可执行文件.exe的方法#encoding=utf-8import osmain = r'D:\cloc\cloc-1.64.exe' # 你要运行的exe文件params1 = r'C:\Users\yuan\Desktop\test\dp.bat' # 你要传入的参数# 如果要传入多个参数,就继续定义,然后在os.system里加起来就行r_v = os.system(main+' '+params1)print (r_v )...原创 2021-03-20 21:39:08 · 6649 阅读 · 1 评论 -
pycharm连接redis时报错:由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败
今天参考这篇文章配置django和celery时报了错,完整的报错信息为consumer: Cannot connect to redis://10.1.210.69:6379/0: Error 10060 connecting to 10.1.210.69:6379. 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败错误的原因是设置broker和backend时,域名应该是你安装redis的地址,比如你安装在本机上,那么这两句就应该改成:...原创 2021-03-20 18:01:37 · 3116 阅读 · 0 评论 -
python、C++数字和字符串互相转化
还是这样简单直接一点,博客的可复阅性也会好一点。这个点虽然简单,可每次要用到的时候都会想不起来,还是记录一下好一点str(x ) 将对象 x 转换为字符串实例:>>> a=0>>> b=str(a)>>> b'0'...原创 2019-03-18 23:20:20 · 60444 阅读 · 1 评论 -
把同一文件夹下的xml文件和jpg文件分别移动到不同的文件夹中
需求是做目标检测时需要把xml和jpg文件分开,以下代码在博主:摒除杂念的文章基础上加了一些注释和修改,这样根据注释也可以批量操作其它类型的文件了import osimport shutilpath_xml = "原文件夹的目录"filelist = os.listdir(path_xml)path1 = "原文件夹的目录"path2 = "jpg文件的新文件夹目录"path3 =...原创 2020-04-14 11:26:32 · 1161 阅读 · 0 评论 -
jupyter notebook使用
本博客会长期更新,主要用于记录jupyter notebook使用过程中遇到的问题,第一次更新于蝙蝠元年3月29日(2020/3/29)一、快捷键参考博客:lawme的文章1.删除选中的单元:按esc键进入命令模式,然后连按两次d键2.隐藏选中单元的输出:命令模式下按O键...原创 2020-03-30 13:44:19 · 133 阅读 · 0 评论 -
windows下安装cpu模式的faster-rcnn并用自己的数据集训练模型踩坑记录
本文基于吴疆大佬的Windows下用cpu模式跑通目标检测py-faster-rcnn 的demo.py(以下简称这篇文章为“参考博客”)但是出了几个小错误,我的解决方案如下:1.EnvironmentError: The nvcc binary could not be located in your $PATH. Either add it to your path, or set $CU...原创 2020-03-29 19:06:48 · 2650 阅读 · 0 评论 -
matplotlib操作集合
1.画饼状图+保存:labels=['verfied','unverified']X=[data[data['verified_purchase']=='Y'].count()[0],data[data['verified_purchase']=='N'].count()[0]]# 上面这行代码看起来比较长,但是其实就两个数fig = plt.figure()plt.pie(X,labe...原创 2020-03-07 18:32:59 · 144 阅读 · 0 评论 -
python实现简单的矩阵互相关运算
输入是3×3矩阵,卷积核/过滤器是2×2矩阵import numpy as npinput = np.array([[0, 1, 2], [3, 4, 5], [6, 7, 8]])kernel = np.array([[0, 1], [2, 3]])hi, wi = input.shapehk, wk = kernel.shapeho = hi-hk+1wo = wi-wk+1...原创 2020-02-23 18:59:11 · 1921 阅读 · 1 评论 -
解决pycharm使用matplotlib.pyplot.show()不显示图像
参考博客:python编程之plt.show()显示不出来图片问题不在代码,在pycharm的设置那里,如下:把勾选状态改为不勾选状态就可以了原创 2020-02-16 19:13:13 · 4675 阅读 · 2 评论 -
用python-opencv给图像添加椒盐噪音
感谢:https://blog.csdn.net/saltriver/article/details/78882669import cv2import numpy as npfrom matplotlib import pyplot as pltpeppers = cv2.imread('4.png',0)row, column = peppers.shapenoise_salt ...原创 2020-01-26 23:08:30 · 629 阅读 · 0 评论 -
pandas操作集合
1.shift():把整列数据右移一列(axis=1)或者整个数据表下移一行(参数为axis=0),默认是axis = 02.drop_duplicates(),去除重复项,它有3个参数,其中subset用来指定特定的列,默认是所有列,详细的解释在这3.cumsum():连续和,详细见下面的例子和官方文档:>>> s = pd.Series([2, np.nan, 5, -...原创 2020-03-02 21:57:38 · 1700 阅读 · 0 评论 -
tensorflow使用
本博客会长期更新1.首先是tensorflow的安装,这篇文章对我的帮助比较大。简单来说,就是:安装python+安装anaconda+创建虚拟环境+在虚拟环境中安装tensorflow四大步2.查看python解释器的路径:在anaconda的prompt中输入指令:python -c "from distutils.sysconfig import get_python_lib; pri...原创 2020-01-12 02:15:06 · 140 阅读 · 0 评论 -
python文件操作
1.open函数有一些用于编辑文件的参数,对于这些参数,一般都是可以实现“如果该文件已存在那么打开该文件,如果不存在则创建文件然后编辑文件”原创 2020-03-01 23:36:43 · 118 阅读 · 0 评论 -
报错处理系列(python篇)
1.UnicodeDecodeError: 'gbk' codec can't decode byte 0xa2 in position 2338: illegal multibyte sequence:打开方式加个b,即:author = open(author_dir, "r")->author = open(author_dir, "rb")参考自:https://www.cnbl...原创 2020-01-11 20:19:05 · 527 阅读 · 0 评论 -
numpy包
1.numpy.linalg.eig(方阵A):求解方阵A的特征值及对应的特征向量使用示例:2.获取array中x元素的indexnumpy.argwhere(a==x),示例:另一种更直接的方法是,把array转成list,然后直接用list.index()即可,如下:import numpy as npa=np.array([1,2,3,4])list_a=a.tolist(...原创 2019-11-29 17:22:26 · 88 阅读 · 0 评论 -
python实现简单词法分析器
文法如下:写的过程遇到的新知识点记录如下:1.str转int:int(str)另外说一点,在python3中,int代替了long型,也就是说,在python3中,int的最大范围可到2^63-1.2.判断对象x不为Noneif x is not None...原创 2019-09-19 15:07:20 · 5157 阅读 · 0 评论 -
python的一些零碎知识点
1.numpy.zeros((n,m)):生成n行m列的零矩阵numpy.zeros((n,)):生成1行n列的零矩阵2.sklearn.model_selection.KFold(n_splits,shuffle,random_state):目前还不太清楚,今天需要把这个函数弄懂,然后结合这篇博客把自己对这个函数的认识写出来...原创 2019-10-21 12:03:51 · 896 阅读 · 0 评论 -
python实现广度优先算法
参考博客:https://blog.csdn.net/Neo233/article/details/80471794这篇博客的代码都是基于参考博客里的题目和代码的。BFS在这个题目中的实现思想:1.用一个队列存储待检查的邻居们2.从这个队列中弹出队列头,我们这里暂时称为邻居A,检查这位邻居A是否是芒果销售商3.如果是,那么你找到一个芒果销售商了,结束程序4.如果不是,把A的所有邻居加入...原创 2019-10-01 23:05:30 · 1267 阅读 · 0 评论 -
python从键盘读取多行数据
参考:知乎import syslist=[]list_new=[]for line in sys.stdin: list_new=line.split() list.extend(list_new)print(list)按ctrl+d后可结束输入原创 2019-09-17 23:58:42 · 3446 阅读 · 1 评论