
python
文章平均质量分 91
vivian_ll
这个作者很懒,什么都没留下…
展开
-
把pip源从国外官方更换到国内镜像
pip国内的一些镜像阿里云 https://mirrors.aliyun.com/pypi/simple/中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/豆瓣(douban) http://pypi.douban.com/simple/清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/修改源方法:临时使用:原创 2020-05-18 17:59:51 · 3597 阅读 · 0 评论 -
运筹学中的节约里程法及其python实现
节约里程法是用来解决运输车辆数目不确定的问题的最有名的启发式算法。又称节约算法或节约法,可以用并行方式和串行方式来优化行车距离。Saving Algorithm, 节约算法,又称C-W算法,是由Clarke和Wright于1964年首次提出的,用来解决VRP问题,是重要的物流算法。参考网址:节约里程法-百度百科节约里程算法的python实现C# 节约里程法实现...原创 2020-05-18 10:55:30 · 21062 阅读 · 12 评论 -
jupyter notebook安装和基础使用教程
一、简介Jupyter Notebook是基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。即,Jupyter Notebook以网页的形式打开,可以在网页页面中直接编写代码和运行代码,代码的运行结果也会直接在代码块下显示。如在编程过程中需要编写说明文档,可在同一个页面中直接编写,便于作及时的说明和解释。组成部分包括网页应用和文档。特点包括编程时具有语法高亮、缩进、tab补全的功能;可直接通过浏览器运行代码,同时在代码块下方展示运行结果;以富媒体格式展示计原创 2020-05-15 21:54:57 · 2991 阅读 · 0 评论 -
pandas常见函数的用法(apply、groupby、agg)
1. apply方法apply方法就是将函数应用到由列或行形成的一维数组上。可以快速地对列进行处理,尤其是在进行多行计算的时候,相比于传统的轮循计算要高效很多。例如:import pandas as pddf=pd.DataFrame(np.random.randn(4,5),columns=list('abcde'))# 求每列的最大值与最小值的差x = df.apply(lambda x:x.max()-x.min())# 求每行的最大值与最小值的差y = df.apply(lambd原创 2020-05-15 16:43:40 · 5335 阅读 · 0 评论 -
使用sklearn、matplotlib等库时遇到的问题汇总
xgboost多分类时报错:label and prediction size not match, hint: use merror or mlogloss for multi-class classification解决:参数配置问题,sklearn接口下的xgboost时,配置更改如下:objective='multi:softprob', num_class=3,eval_metric...原创 2020-03-27 19:56:45 · 1159 阅读 · 0 评论 -
python正则表达式及常用匹配
6个及6个以上的阿拉伯数字连续出现:re.findall('\d{6,}',line)匹配时间,冒号前面是一到两位的数字,后面是两位数字:(注意防止08:345、102:30这种情况出现,并考虑全角和半角冒号)re.findall('\D([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]\D', '。'+line+'。')re.findall('\D([0-...原创 2020-02-12 14:15:48 · 1121 阅读 · 0 评论 -
面试准备——python知识
一、range和xrange的用法和区别二、深拷贝和浅拷贝copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象。copy.deepcopy 深拷贝 拷贝对象及其子对象三、python数据结构3.1 怎样去除list中的重复元素使用set或者dict...原创 2019-12-31 11:59:55 · 302 阅读 · 0 评论 -
python中命令行工具模块argparse的使用
跑机器学习或深度学习实验的时候经常需要调各种参数,当把代码部署到服务器上时,如果直接在代码中改参数的大小,非常不方便,如果用argparse模块通过命令行传递参数到程序中,会使代码更方便简洁有序。argparse是python用于解析命令行参数和选项的标准模块,类似于linux中的ls指令,后面可以跟着不同的参数选项以实现不同的功能,argparse就可以解析命令行然后执行相应的操作。argp...原创 2019-11-25 20:49:43 · 726 阅读 · 0 评论 -
python图片去重
爬虫获取的图片经常会有不同名但相同或相似的情况,因此需要对图片进行去重。以下介绍两种方法。一、图片通过md5去重import md5import osfrom time import clock as nowdef getmd5(filename): file_txt = open(filename, 'rb').read() m = md5.new(file_tx...原创 2019-05-07 10:20:13 · 6223 阅读 · 4 评论 -
使用sklearn对数据进行标准化/正则化
一、标准化/正则化1. 0-1标准化也叫离差标准化,是对原始数据的线性变换,使结果落到[0,1]区间,转换函数如下:x∗=x−minmax−minx^*= \frac{x-min} {max-min}x∗=max−minx−min其中max为样本数据的最大值,min为样本数据的最小值。这种方法有一个缺陷就是当有新数据加入时,可能导致max和min的变化,需要重新定义。sklearn实现...原创 2019-05-17 15:38:47 · 3388 阅读 · 1 评论 -
python数据可视化——直方图、热力图和缺失值可视化
一、绘制直方图首先读入数据def read_data(): path = '../data/forCodeF-2.csv' data = pd.read_csv(path,encoding='gbk') return data然后调用matplotlib.pyplot.hist函数绘制各维特征的分布直方图。import matplotlib.pyplot as p...原创 2019-05-17 16:47:49 · 25820 阅读 · 3 评论 -
python缺失值填充的几种方法
常见的数据缺失填充方式分为很多种,比如删除法、均值法、回归法、KNN、MICE、EM等等。R语言包中在此方面比较全面,python稍差。python目前已有的两种常见的包,第一个是impyute,第二个是fancyimpute。比如fancyimpute中集成了很多方式,包括均值、众数、频数填充,KNN填充、MCMC填充等。一、直接填充data = pd.read_csv(path,enco...原创 2019-06-14 10:37:41 · 63750 阅读 · 5 评论 -
python删除list中多个相同的元素
法一:pop方法删除过程中还能返回被删除的值alist = ['d', 'd', 7, 4, 'd', 'd', 2, 1]for i in range(len(alist)-1,-1,-1): # 倒序循环,从最后一个元素循环到第一个元素。不能用正序循环,因为正序循环删除元素后后续的列表的长度和元素下标同时也跟着变了,len(alist)是动态的。 if alist[i] == '...原创 2019-06-14 20:06:24 · 18070 阅读 · 1 评论 -
面试准备——动态规划(1):编辑距离及其回溯路径
一、求编辑距离(Leetcode 72)编辑距离(Edit Distance),是指两个字串之间,由一个转成另一个所需的最少编辑操作次数。允许对字符串中的字符进行的的操作只有替换、插入、删除三种操作。编辑距离是自然语言处理中的重要的文本比较算法之一。也是从多个相似的字符串组中提取字符串的有利的武器。编辑距离算法,也称为LD算法。LD算法就是自然语言处理(NLP)里的“编辑距离”算法。俄国科学家...原创 2019-06-21 10:39:49 · 3303 阅读 · 1 评论 -
面试准备——动态规划(2):八皇后问题/n皇后问题
题目:在8×8的国际象棋上摆放八个皇后,使其不能相互攻击,即任意两个皇后不得处在同一行、同一列或者同一对角斜线上。下图中的每个黑色格子表示一个皇后,这就是一种符合条件的摆放方法。请求出总共有多少种摆法。(leetcode51、52)解法一:回溯法由于每次都是遍历下一行,所以两个皇后的行肯定不同;因此判断当前列是否已经占用,和判断对角线的位置。用三个数组来表示列、正反对角线的占用情况。一行行的...原创 2019-06-21 11:01:59 · 3397 阅读 · 2 评论 -
python同时读取多个文件
同时读取两个相同行的文件spokenfile = open('xxx.txt','r',encoding='utf-8')writtenfile = open('xxx.txt','r',encoding='utf-8')for line1,line2 in zip(spokenfile,writtenfile): s1 = line1 s2 = line2Python...原创 2019-06-21 11:17:43 · 23910 阅读 · 0 评论 -
pytorch安装及基本使用(win10+CPU+Python3.6)
pytorch这两年越来越流行,定义网络结构简单,而且还很直观灵活,数据加载快。一、安装登陆pytorch官网。选择合适的环境:运行安装命令:pip3 install https://download.pytorch.org/whl/cpu/torch-1.1.0-cp36-cp36m-win_amd64.whlpip3 install https://download.p...原创 2019-06-18 16:19:27 · 15486 阅读 · 1 评论 -
python将汉字表示的数字和阿拉伯数字进行相互转换
一、阿拉伯数字转汉字分析发现,中国的数字习惯是 4 位一节的,一个 4 位的数字可被转成几千几百几十几,至于后面添加什么单位则不确定:如果这节 4 位数字出现在 1~4 位,则后面添加单位“元”;如果这节 4 位数字出现在 5~8 位,则后面添加单位“万”;如果这节 4 位数字出现在 9~12 位,则后面添加单位“亿”;多于 12 位就暂不考虑了。注意出现零的特殊情况:有多个零的情况...原创 2019-07-09 11:05:37 · 12957 阅读 · 2 评论 -
python构建带数字的古诗词数据集
一、数据准备:全唐诗数据集:https://github.com/todototry/AncientChinesePoemsDB从郑州大学图书馆网站上爬取下来的全唐诗库,收录了唐代诗人2539人的诗作42863首,共计900卷。该数据集格式为:每首诗一个txt文件,按照卷进行排序和命名。其中有一些为空白文件,总大小为5MB左右。中华古诗数据集:https://github.com/jack...原创 2019-07-04 12:24:08 · 4738 阅读 · 5 评论 -
python字符串、列表、数组、变量等高频常见使用技巧
两个list合为字典python3返回迭代器:a = [1,2,3];b = [2,3,4]c = dict(zip(a,b))python2直接返回list类型,不需要类型转换。批量转换list中的数据类型python3返回迭代器:data = ['1','3.2','2']data = list(map(eval, data))data = ['1','3','2']da...原创 2019-07-22 12:35:58 · 460 阅读 · 0 评论 -
使用pytorch时遇到的问题汇总
遇到问题:embedding的时候遇到数据加载的时候遇到TypeError: 'int' object is not callable问题:数据不是Tensor类型的而是np.array或其他类型的。解决:tensor = torch.LongTensor(data_x)data_x = autograd.Variable(tensor)tensor = torch.Long...原创 2019-08-09 17:11:25 · 44236 阅读 · 25 评论 -
python字典相关常见操作
统计list中元素的个数构成字典两种方法:1.自建字典freqDict = {} for x in nums: freqDict[x] = 1 if x not in freqDict else freqDict[x]+12.collection库中的Counter方法count = collections.Counter(nums)取出字典...原创 2019-08-19 22:26:54 · 422 阅读 · 0 评论 -
二分类和多分类的性能评价指标及python计算
一、二分类real\predictPositiveNegativeTrueTPFNFalseFPTNTP、TN、FP、FN 中的第二个字母(列标首字母)是机器学习算法或模型预测的结果(正例:P、反例:N)TP、TN、FP、FN 中的第一个字母(行标首字母)是根据真实情况判断预测结果是否正确(正确:T、错误:F)即:正确地预测为正例:TP正确...原创 2019-08-15 16:05:29 · 28282 阅读 · 10 评论 -
面试准备——动态规划(4):合并石头的最低成本 & 击爆气球
题目:有 N 堆石头排成一排,第 i 堆中有 stones[i] 块石头。每次移动(move)需要将连续的 K 堆石头合并为一堆,而这个移动的成本为这 K 堆石头的总数。找出把所有石头合并成一堆的最低成本。如果不可能,返回 -1 。(leetcode1000题)示例1:输入:stones = [3,2,4,1], K = 2输出:20解释:从 [3, 2, 4, 1] 开始。合并...原创 2019-08-26 16:26:59 · 772 阅读 · 0 评论 -
scrapy爬虫(以东方烟草网为例)
scrapy爬虫相对网址转绝对网址递归爬取原创 2017-03-26 19:42:10 · 1892 阅读 · 0 评论 -
Python图形处理库PIL简单用法
所谓位图,又称栅格图(英语:Raster graphics)或点阵图,是使用像素阵列(Pixel-array/Dot-matrix点阵)来表示的图像。位图的像素都分配有特定的位置和颜色值。每个像素的颜色信息由RGB组合或者灰度值表示。根据位深度,可将位图分为1、4、8、16、24及32位图像等。每个像素使用的信息位数越多,可用的颜色就越多,颜色表现就越逼真,相应的数据量越大。例如,位深度为 1 的...原创 2019-03-19 19:25:36 · 457 阅读 · 0 评论 -
LeetCode10:正则表达式匹配(python版)
题目描述:请实现一个函数用来匹配包括’.’和’*’的正则表达式。模式中的字符’.’表示任意一个字符,而’*’表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串”aaa”与模式”a.a”和”ab*ac*a”匹配,但是与”aa.a”和”ab*a”均不匹配思路1——递归:本题就是很直观的字符串的匹配,难点在于当遇到模式中两个特殊字符怎么处理和对于...原创 2019-02-26 16:07:54 · 1771 阅读 · 1 评论 -
python爬虫抓取多关键词搜索的百度图片
在百度图片上抓取一百多个关键词对应的图片各500张原创 2017-07-11 10:48:56 · 2443 阅读 · 0 评论 -
【python】matplotlib画图
python的matplotlib简单绘图直线图折线图饼图原创 2017-01-16 20:01:36 · 1312 阅读 · 0 评论 -
静觅小白爬虫及进阶系列学习笔记
小白爬虫第一弹之抓取妹子图遇到问题:python2.x和python3.x有区别。 1. 编码问题,报错ASCII时要在前面加上import sysreload(sys)sys.setdefaultencoding('utf-8'),路径中有中文字符需要把str类型的转为Unicode类型,使用.decode(‘utf-8’) 2. Print问题,python2.x版本的print没有原创 2017-04-14 16:09:37 · 2599 阅读 · 0 评论 -
【python】去掉字符串中某个指定位置的字符的几种方法
以date="[2017-02-10]"为例date="[2017-02-10]"print date.strip('[]')print int(date.replace('[','').replace(']','').replace('-',''))print int(date[1:5]+date[6:8]+date[9:11])print int(date.split('[')[1].s原创 2017-04-05 10:26:33 · 12931 阅读 · 0 评论 -
scrapyd部署
scrapyd部署原创 2017-04-11 15:27:21 · 898 阅读 · 0 评论 -
python——wordcloud生成中文词云
毕设中期答辩,想展示一下前期数据抓取和聚类的成果,感觉词云这种形式不错,于是简单学习了一下wordcloud。 首先是安装 我是使用pip直接安装的, pip install wordcloud 没有报错,如果有错误可以从http://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud下载whl文件直接安装。 基本用法 (直接上代码吧)# -*-原创 2017-03-29 17:35:24 · 42197 阅读 · 6 评论 -
sklearn 文档翻译之 sklearn.cluster.KMeans
转载自:http://blog.youkuaiyun.com/xiaoyi_zhang/article/details/52269242在sklearn中处理kmeans聚类问题,用到的是 sklearn.cluster.KMeans 这个类。参数:n_clusters:整形,缺省值=8生成的聚类数,即产生的质心(centroids)数。max_iter:整形,缺省值=300执行一次k-means算法转载 2017-03-11 12:03:19 · 664 阅读 · 0 评论 -
毕设知识点总结——part2.聚类
pythonscipynumpy原创 2017-03-11 11:59:27 · 399 阅读 · 0 评论 -
毕设知识点总结——part1.分词
Sequence类型 字符串encode编码数据结构原创 2017-03-10 20:02:55 · 321 阅读 · 0 评论 -
python中的with
with 语句适用于对资源进行访问的场合,确保不管使用过程中是否发生异常都会执行必要的“清理”操作,释放资源,比如文件使用后自动关闭、线程中锁的自动获取和释放等。 with从Python 2.5就有,需要from __future__ import with_statement。自python 2.6开始,成为默认关键字。在What’s new in python2.6/3.0中,转载 2017-07-16 11:51:52 · 274 阅读 · 0 评论 -
Windows下安装TensorFlow
TensorFlow安装转载 2017-07-15 15:46:47 · 1157 阅读 · 0 评论 -
OpenCV for Python 学习笔记
转载自:http://www.cnblogs.com/pakfahome/p/3914318.html给源图像增加边界cv2.copyMakeBorder(src,top, bottom, left, right ,borderType,value)src:源图像top,bottem,left,right: 分别表示四个方向上边界的长度borderType: 边界的类型有以下几种:BORDER_转载 2017-07-20 10:51:09 · 527 阅读 · 0 评论 -
python解决maximum recursion depth exceeded in comparison报错
刷题的时候设置递归有时候会出现报错:RecursionError: maximum recursion depth exceeded in comparison。原因是在Python里的递归调用是有限制的,可以使用sys模块里的getrecursionlimit方法查看的到。>>> import sys>>> sys.getrecursionlimit()...原创 2019-02-25 17:39:35 · 20148 阅读 · 0 评论