# -*- coding: utf-8 -*-"""Created on Sat Jun 30 14:49:22 2018 @author: zhen""" import numpy as npa = np.array([[1,2,3],[11,22,33]])b = np.array([[4,5,6],[44,55,66]])# 数组连接成矩阵c = np.c_[a,b]r = np.r_[a,b]print('-------------按行转…
np.r_:是按列连接两个矩阵,就是把两矩阵上下相加,要求列数相等,类似于pandas中的concat(). np.c_:是按行连接两个矩阵,就是把两矩阵左右相加,要求行数相等,类似于pandas中的merge(). import numpy as np a = np.array([1, 2, 3]) b = np.array([4, 5, 6]) c = np.c_[a,b] print(np.r_[a,b]) print('\n') print(c) print('\n') print(np…
np.r_:按列连接两个矩阵,就是把两矩阵上下相加,要求列数相等,类似于pandas中的concat() np.c_:按行连接两个矩阵,就是把两矩阵左右相加,要求行数相等,类似于pandas中的merge() import numpy as np a = np.array([1, 2, 3]) b = np.array([4, 5, 6]) c = np.c_[a,b] print(np.r_[a,b]) print(c) print(np.c_[c,a]) 结果如下: [1 2 3 4 5 6…
import sys reload(sys) sys.setdefaultencoding('utf-8') import numpy as np def test(): ''' numpy函数np.c_和np.r_学习使用 ''' data_list1=[4,6,12,6,0,3,7] data_list2=[1,5,2,65,6,7,3] data_list3=[1,5,2,65,6] print u'np.r_ data_list1和data_list2合并' print np.r_[da…
# -*- coding: utf-8 -*- # 请利用Python内置的hex()函数把一个整数转换成十六进制表示的字符串 n1 = 255 n2 = 1000 print(hex(n1)) print(hex(n2))…
np.r_是按行连接两个矩阵,就是把两矩阵上下相加,要求列数相等,最终结果的行数为两个矩阵行数和. np.c_是按列连接两个矩阵,就是把两矩阵左右相加,要求行数相等,最终结果的列数等于两矩阵的列数和. np中的矩阵合并np.c_[matrix]只能按照列拼接(横向扩展原来句子的维度) np中的矩阵合并np.r_[matrix]只能按照行拼接(纵向扩展原来样本的数量) np中的矩阵合并np.concatenate([],1为列拼接/0为行拼接) 1)np.concatenate和np.append…
效果展示 原始效果图 素描效果图 相关依赖包 # 超美观的打印库 from pprint import pprint # 图像处理库 from PIL import Image # 科学计算库 import numpy as np # GUI文件打开窗口 import tkinter.filedialog 制作文件打开窗口 # 创建根窗口 root = tkinter.Tk().withdraw() # 文件选择对话窗口,返回文件对象 file_ = tkinter.filedialog.ask…
# coding=gbk from PIL import Image import numpy as np # import scipy def loadImage(): # 读取图片 im = Image.open("lena.jpg") # 显示图片 im.show() im = im.convert("L") data = im.getdata() data = np.matrix(data) # print data # 变换成512*512 data =…
将列表中的大写字母转换成小写如果list中既包含字符串,又包含整数,由于非字符串类型没有lower()方法,L1 = ['Hello', 'World', 18, 'Apple', None]请修改列表生成式,通过添加if语句保证列表生成式能正确地执行. # -*- coding: utf-8 -*- L1 = ['Hello', 'World', 18, 'Apple', None] L2 = [s.lower() for s in L1 if isinstance(s,str)==True]…
1. np.c[a, b]  将列表或者数据进行合并,我们也可以使用np.concatenate 参数说明:a和b表示输入的列表数据 2.np.linspace(0, 1, N) # 将0和1之间的数分成N份 参数说明:0表示起始数据,1表示末尾数据,N表示生成的分数 3.xx, yy = np.meshgrid(np.arange(x.min(), x.max(), N), np.arange(y.min(), y.max(), N))  对数据进行切分后,生成二维数据点 参数说明:np.ar…
[阅读全文] 第三方库说明 # PDF读取第三方库 import pdfplumber # DataFrame 数据结果处理 import pandas as pd 初始化DataFrame数据对象 # 初始化DataFrame数据对象.用于DataFrame数据保存 data_frame = pd.DataFrame() 读取PDF表格 # pdf 文件路径 pdf_file = '/usr/load/data.pdf' # 读取pdf数据 pdf_data = pdfplumber.open…
eval()和json.loads() 都可以将字符串转换成对应的python数据类型,举个字典的例子,同样适合其他数据类型元组.列表.集合. In [3]: ss = '{"a":1,"b":2}' In [4]: type(eval(ss)) Out[4]: dict In [7]: type(json.loads(ss)) Out[7]: dict json一种轻量级数据交换格式,可以将json对象当作比较特殊的字符串,eval与json.loads都可以将大…
yuanwen: http://blog.csdn.net/crossky_jing/article/details/49466127 scikit-learn 练习题 题目:Try classifying classes 1 and 2 from the iris dataset with SVMs, with the 2 first features. Leave out 10% of each class and test prediction performance on these o…
python数据拟合主要可采用numpy库,库的安装可直接用pip install numpy等. 1. 原始数据:假如要拟合的数据yyy来自sin函数,np.sin import numpy as np import matplotlib.pyplot as plt xxx = np.arange(0, 1000) # x值,此时表示弧度 yyy = np.sin(xxx*np.pi/180) #函数值,转化成度 2. 测试不同阶的多项式,例如7阶多项式拟合,使用np.polyfit拟合,np…
meshgrid的目的是生成两套行列数一致的矩阵,其中一个是行重复,一个是列复制:可以这么来理解,通过ravel()将矩阵数据拉平之后,就可以将这两套矩阵累加在一起,形成一个两行数据,要达到这个效果是需要行列相同,这样就能够理解meshgrid行为了. 比如下面的数据,是原始的两个数组: t01: array([1., 2., 3.]) t02: array([4., 5.]) 经过了一些meshgrid的处理之后,形成了两个矩阵: ++++++++++++ t1 ++++++++++++ ar…
>> import numpy as np >> help(np.repeat) >> help(np.tile) 二者执行的是均是复制操作: np.repeat:复制的是多维数组的每一个元素: np.tile:复制的是多维数组本身: 1. np.repeat >> x = np.arange(1, 5).reshape(2, 2) >> np.repeat(x, 2) array([1, 1, 2, 2, 3, 3, 4, 4]) # 对数组中…
Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/luo/anaconda3/envs/tf2019/lib/python3.6/site-packages/tensorflow/__init__.py", line 24, in <module> from tensorflow.python import * Fi…
例子: import numpy as np dataSet = [] with open('/home/lai/下载/20081023025304.plt') as fr: for line in fr.readlines()[6:]: curline = line.strip().split(',')#字符串方法strip():返回去除两侧(不包括)内部空格的字符串:字符串方法spilt:按照制定的字符将字符串分割成序列 fltline = curline[0:2] fltline = li…
本文转自豆瓣_燃烧的影子 图灵机与可计算性 图灵(1912~1954)出生于英国伦敦,19岁进入剑桥皇家学院研究量子力学和数理逻辑.1935年,图灵写出了"论高斯误差函数"的论文,因此他从一名学生直接成为学院的研究员,并开始了"可计算性"研究.1936年4月,图灵发表了"可计算数及其在判定问题上的一个应用"的论文,形成了"图灵机"的重要思想.用反证法证明,任何可计算其值的函数都存在相应的图灵机:反之,不存在相应图灵机的函数就是…
output   array([[ 0.24747071, -0.43886742],   [-0.03916734, -0.70580089],   [ 0.00462337, -0.51431584],   ...,   [ 0.15071507, -0.57029653],   [ 0.06246116, -0.33766761],   [ 0.08218585, -0.59906501]], dtype=float32)       ipdb> np.shape(output)   (6…
1. np.asarray -- numpy 风格的类型转换 从已有多维数组创建新的多维数组,数据类型可重新设置 >> B = np.asarray(A, dtype='int32') 2. np.array() vs np.asarray 源码之前,了无秘密. 两者的区别和联系,铜通过查看源码,一目了然: def asarray(a, dtype=None, order=None): return array(a, dtype, copy=False, order=order) 两者主要的区…
1.多维数组降为一维: a = np.arange(24) np.ravel(a)或者a.ravel a.flatten 2.数据类型转换 a = a.astype(np.float32) //tf是tf.cast(a, tf.float32) 3.多个一维数组连接成一个一维数组 import numpy as np arr1=np.array([10,22],float) arr2=np.array([31,42,45,61],float) arr3=np.array([65,76,89,91…
np.random.randn是基于标准正态分布产生的随机数,np.random.rand是基于均匀分布产生的随机数,其值在[0,1). np.mgrid 与np.ogrid的理解及区别:np.mgrid 与np.ogrid的目的都是为创建一个格栅区域,而mgrid返回的是相同维度的数组,ogrid仅返回本维度的数组,而创建格栅区域可以i这样理解:如果要确定一点(x,y),则对于mgrid返回值而言,首先取出所有数组的第x行,然后再第x行取出第y个数字,因此,mgrid的第一个数组x,每行都是相…
array 和 asarray 都可以将 结构数据 转化为 ndarray,但是主要区别就是当数据源是ndarray时,array仍然会copy出一个副本,占用新的内存,但asarray不会. 1.输入为列表时 import numpy as np a=[[1,2,3],[4,5,6],[7,8,9]] b=np.array(a) c=np.asarray(a) a[2]=1 print(a) print(b) print(c) """ 运行结果: [[1, 2, 3], […
NumPy(Numerical Python的简称)是Python数值计算最重要的基础包.大多数提供科学计算的包都是用NumPy的数组作为构建基础. NumPy的部分功能如下: ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组. 用于对整组数据进行快速运算的标准数学函数(无需编写循环). 用于读写磁盘数据的工具以及用于操作内存映射文件的工具. 线性代数.随机数生成以及傅里叶变换功能. 用于集成由C.C++.Fortran等语言编写的代码的A C API. 由于NumP…
Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,是一种基于64个可打印字符来表示二进制数据的方法.通过http传输图片常常将图片数据转换成base64之后再进行传输. Base64简介 Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法.可查看RFC2045-RFC2049,上面有MIME的详细规范. Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息.例如,在Java…
二进制打开图片文件,base64编解码,转成Opencv格式: # coding: utf-8 import base64 import numpy as np import cv2 img_file = open(r'00.JPG','rb') # 二进制打开图片文件 img_b64encode = base64.b64encode(img_file.read()) # base64编码 img_file.close() # 文件关闭 img_b64decode = base64.b64dec…
在ROS机器人的应用开发中,调用摄像头进行机器视觉处理是比较常见的方法,现在把利用opencv和python语言实现摄像头调用并转换成HSV模型的方法分享出来,希望能对学习ROS机器人的新手们一点帮助.至于为什么转换成HSV模型,因为在机器视觉方面用HSV模型进行图像处理是比较方便的,实现的方法和效果相对于其他模型都较为突出. 接下来是完整步骤: 1.打开一个终端,用vim编辑器新建并打开一个后缀为.py的文件 $ vim a.py 2.在打开的文件里按“a”进入编辑模式,然后输入以下代码 im…
4.2 通用函数:快速的元素级数组函数 通用函数(即ufunc)是一种对ndarray中的数据执行元素级运算的函数. 1)一元(unary)ufunc,如,sqrt和exp函数 2)二元(unary)ufunc,可接受2个数组,并返回一个结果数组,如add或maximum函数   3)部分ufunc可返回多个数组,如modf,是Python内置函数divmod的矢量化版本,可返回浮点数数组的整数部分和小数部分: 4)Ufuncs可以接受一个out可选参数,这样就能在数组原地进行操作. 列举部分一…
图片序列转换成视频 最近一直在找一个工具,能够将一堆图片转化成视频.网上找了一些小软件,还有 win10 的照片自带的视频制作功能,都不是很满意. 又不想下载那些专业的视频剪辑软件大材小用. 然后找到了ffmpeg这个非常出名非常常用的多媒体编解码库,看了下文档试着用了下,它确实可以完成上述功能,但是命令行对输入图片的命名有规定(文件名必须开头相同.且包含连续编号),并且windows下的编译版不支持Pattern type 'glob'. 先尝试了用python写了批量重命名然后调用ffmpe…