python学习手册
chestnut--
计算机视觉小小菜鸟一枚
邮箱:1678438052@qq.com
展开
-
哈夫曼树以及哈夫曼编码python
非常好的参考资料,看完就懂了1、漫画:“哈夫曼编码” 是什么鬼?2、漫画:什么是 “哈夫曼树” ?PYTHON 实现1、二叉树,需要自己实现__lt__class BinTreeNode(object): """ """ def __init__(self, data, left=None, right=None): """ """ self.data, self.left, self.right = data, left,原创 2021-07-06 13:37:17 · 431 阅读 · 0 评论 -
【pandas】dataframe根据某列是否是null筛选数据
选择列值为null/None/nan的行df[df[2].isna()]选择列值不为null/None/nan的行df[df[2].notna()]原创 2021-03-11 10:07:18 · 11597 阅读 · 1 评论 -
【pandas】读取大型文件技巧
当csv文件特别大时,pandas读取整个文件非常的耗时,比如我这边有文件大小为5.77G!wc -l x.csv行数2390492也非常多;用pandas加载x.csv,花了将近2分钟。 为了加快速度,将使用python 包datatableimport datatable as dt%%timetrain_data_datatable = dt.fread('x.csv')CPU times: user 27.6 s, sys: 3.31 s, total: 30.9 sWall t原创 2020-12-31 16:40:21 · 1723 阅读 · 0 评论 -
【pandas】column变index,dataframe转置
df1 = pd.DataFrame({'key': ['b', 'b', 'a', 'c', 'a', 'a', 'b'], 'data1': range(7)})df1df1.set_index('key').T原创 2020-06-08 18:55:33 · 2667 阅读 · 0 评论 -
pandas 调整列的顺序
经过一步步的处理操作,列的顺序发生了变化(旧列的删除,新列的添加),有时候我们需要调整列的顺序之后再进行保存:import pandas as pd import numpy as np df1 = pd.DataFrame({'key': ['b', 'b', 'a', 'c', 'a', 'a', 'b'], 'data1': range(7)})df1查看列名:df1.columnsIndex([‘key’, ‘data1’], dtype原创 2020-05-28 15:22:08 · 4411 阅读 · 0 评论 -
pandas根据某列值为key整合其他列值,拆分某列值增加多行数据
一、根据某列值为key,整合其他列值直接上例子:import pandas as pd import numpy as np df1 = pd.DataFrame({'key': ['b', 'b', 'a', 'c', 'a', 'a', 'b'], 'data1': range(7)})df1整合,根据key值,对于同一个key值,有多个data1与之对应,将多个data1之间用分隔符\t连接,作为一个元素:ex_data = df1.grou原创 2020-05-27 18:57:20 · 3780 阅读 · 0 评论 -
利用dlib库(Python)实现实时(摄像头)人脸检测以及特征点标定(landmark))
此实现是在Windows环境下,Python2.7,以及利用opencv实现的。在用ubuntu 16.04实现时,出现了opencv不能打开摄像头的问题,希望有了解这个问题的可以沟通一下。Dlib库的官方介绍,第一次见到dlib感觉像发现了新大陆! Dlib is a modern C++ toolkit containing machine learning algorithms and t原创 2017-10-02 15:51:37 · 5434 阅读 · 0 评论 -
图像哈希二进制字符串相互转换以及flatten()的用法
通过imagehash模块中whash()函数直接调用得到的是16进制的字符串,通过源码可以知道是将只有0或者1的矩阵转化成了16进制的字符串,代码如下:def _binary_array_to_hex(arr): """ internal function to make a hex string out of a binary array.原创 2017-05-31 20:40:51 · 2653 阅读 · 0 评论 -
直方图均衡图像对比度(histogram equalization)PYTHON+OPENCV2
直方图均衡化是一种图像处理方法,用来提高图像的对比度,本博客涉及到直方图的应用PYTHON+OPENCV2如果一个图像的像素取值范围在很狭窄的一个区域内,那么图像的细节就不是那么的明显,如果可以将图像的像素分布范围均衡化,那么能够提高图像的对比度,如下图所示:使用python+opencv2计算一幅图像的直方图,图像如下图:import cv2import numpy as npf...原创 2018-10-17 13:41:44 · 4053 阅读 · 0 评论 -
图像通道变换python-opencv
图片: opencv默认读取的图片矩阵是BGR格式的input_path = '/home/lixin/Downloads/VOCdevkit/VOC2007/JPEGImages/000005.jpg'x_img = cv2.imread(input_path)print np.shape(x_img)#(375, 500, 3)# BGR -> RGBx_img = x_img[:,原创 2017-12-13 10:51:55 · 8525 阅读 · 0 评论 -
opencv2+ glob循环读入图片,将文件夹中的图片统一格式
方法1:利用glob模块批量读入图片是最合适的。import globimport cv2import numpy as npb= glob.glob(r"D:/pictureSim2/*") #得到的b是一个文件名称的列表print(b)#['D:/pictureSim2\\1.1.png', 'D:/pictureSim2\\1.jpg', 'D:/pictureSim2\\10.1原创 2017-10-09 17:00:03 · 5073 阅读 · 0 评论 -
win7 下安装python用的dlib库
win7 下安装python用的dlib库采用 pip install xxx.whl 即可!!very easy!根据自己电脑的系统下载相应的whl文件比如我的是win7 ,64位,用的python2.7 则下载的是dlib-18.17.100-cp27-none-win_amd64.whl原创 2017-09-27 23:27:49 · 1075 阅读 · 0 评论 -
【数据结构笔记】Leetcode:718. 最长重复子数组(动态规划)
给两个整数数组 A 和 B ,返回两个数组中公共的、长度最长的子数组的长度。 示例 1:输入:A: [1,2,3,2,1]B: [3,2,1,4,7]输出: 3解释: 长度最长的公共子数组是 [3, 2, 1]。说明: 1 <= len(A), len(B) <= 1000 0 <= A[i], B[i] &am原创 2018-05-10 20:32:33 · 3277 阅读 · 0 评论 -
【数据结构笔记】Leetcode买卖股票的最佳时机 系列总结
买卖股票的最佳时机 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。 注意你不能在买入股票前卖出股票。 示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 ...原创 2018-05-09 22:50:16 · 1102 阅读 · 0 评论 -
阿里算法工程师模拟题2018/5/7
编程题:某商家开展用福卡兑换现金券的促销活动。该商家规定,和谐福、爱国福、敬业福、友善福及富强福的积分 分别是F1、F2、F3、F4和F5,顾客收集齐N积分的福卡,即可获得现金券一张。假设,福卡只能通过 扫描“福”字获得,每次扫描“福”字最多获得一张福卡,需指定该次扫描获得的福卡类型,获得和 谐福、爱国福、敬业福、友善福和富强福的概率分别为P1、P2、P3、P4及P5。请问,为获得一张现...原创 2018-05-07 20:11:26 · 629 阅读 · 0 评论 -
【数据结构笔记】二叉搜索树及其相关算法
简介二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序树。 如下图所示: 图片来自百度百科 二叉排序树的查找过程和次优二叉树类似,通常采取二叉链表作为二...原创 2018-05-07 17:51:54 · 463 阅读 · 0 评论 -
【Leetcode】打家劫舍 I and 打家劫舍 II(动态规划)PYTHON
198.打家劫舍 题目表述: 你是一个专业的强盗,计划抢劫沿街的房屋。每间房都藏有一定的现金,阻止你抢劫他们的唯一的制约因素就是相邻的房屋有保安系统连接,如果两间相邻的房屋在同一晚上被闯入,它会自动联系警方。 给定一个代表每个房屋的金额的非负整数列表,确定你可以在没有提醒警方的情况下抢劫的最高金额。 PYTHON:class Solution(object): def ro...原创 2018-04-22 14:03:23 · 2528 阅读 · 0 评论 -
【数据结构笔记】归并排序(merge_sort)+ 堆排序 -- python2.7
此处只有代码:def merge(li,left,mid,right): temp = [] i = left;j=mid+1 while i <= mid and j <= right: if li[i] < li[j]: temp.append(li[i]) i=i+1 ...原创 2018-03-27 11:21:21 · 188 阅读 · 0 评论 -
python调用C++
Python调用主要是调用的C++动态链接库,dll文件关于VS2010如何生成C++动态链接库,参考这篇博客http://blog.csdn.net/g710710/article/details/7255744import ctypeslib2 = ctypes.cdll.LoadLibrary("MyDLL.dll")print(l原创 2017-06-21 22:50:58 · 402 阅读 · 0 评论 -
python 列表,数组,矩阵两两转换tolist()
通过代码熟悉过程:# -*- coding: utf-8 -*-from numpy import *a1 =[[1,2,3],[4,5,6]] #列表print('a1 :',a1)#('a1 :', [[1, 2, 3], [4, 5, 6]])a2 = array(a1) #列表 -----> 数组print('a2 :',a2原创 2017-06-01 09:39:46 · 28754 阅读 · 2 评论 -
建立一个中文名字的文件夹Python
在Python os 模块中三个函数1、os.path.exists(path) 判断一个目录是否存在2、os.makedirs(path) 多层创建目录3、os.mkdir(path) 创建目录2与3两个函数之间最大的区别是当父目录不存在的时候os.mkdir(path)不会创建,os.makedirs(path)则会创建父目录。原创 2017-06-06 20:29:33 · 4054 阅读 · 0 评论 -
Python获取路径中的文件名
例如如下路径:test = '/home/lixin/work/ceratoconus_detector/data/data/input/val/neg/Yang_Ligang_OS_01072010_142437_.npy'现在想将文件名Yang_Ligang_OS_01072010_142437_.npy提取出来,有两种方法:利用split# -*- coding: utf-8 -*-te原创 2017-10-19 13:44:35 · 6296 阅读 · 0 评论 -
python-numpy.vectorize()
http://deepdish.io/2015/04/28/creating-lmdb-in-python/http://nbviewer.jupyter.org/github/joyofdata/joyofdata-articles/blob/master/deeplearning-with-caffe/Neural-Networks-with-Caffe-on-the-GPU.ipynbhttp翻译 2017-11-09 09:44:10 · 9811 阅读 · 0 评论 -
pip 源使用阿里云镜像加速
1.在用户目录下(/home/yonghu)创建新的文件夹 .pip—–mkdir .pip2.进入 .pip文件夹底下,创建pip.conf—cd .pip sudo touch pip.conf sudo vim pip.conf3.在pip.conf中写入[global]index-url=http://mirrors.aliyun.co原创 2017-12-05 09:41:11 · 1629 阅读 · 0 评论 -
python批量获取图像路径txt
note:#导入对路径操作的库import sysimport os #图像路径root_path = 'home/ll/'#将每个图像的路径保存为txtfns = os.listdir(root_path)with open('image_list.txt', 'w') as f: for fn in fns: path = os.path.join(...原创 2018-02-26 14:51:24 · 1409 阅读 · 1 评论 -
pandas object格式转float64格式
在数据处理过程中比如从CSV文件中导入数据data_df = pd.read_csv("names.csv")在处理之前一定要查看数据的类型data_df.info()RangeIndex: 891 entries, 0 to 890 Data columns (total 12 columns): PassengerId 891 non-null int64 Survived原创 2017-09-07 21:57:21 · 32094 阅读 · 2 评论