>> 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]) # 对数组中…
import numpy as np; 两者在创建单位矩阵上,并无区别,两者的区别主要在接口上: np.identity(n, dtype=None):只能获取方阵,也即标准意义的单位阵: np.eye(N, M=None, k=0, dtype=<type 'float'>): N : int,Number of rows in the output.(行数,必选) M : int, optional,Number of columns in the output. If None, def…
1. np.hstack np.column_stack >>> np.hstack([np.array([1, 2, 3]), np.array([4, 5, 6])]) array([1, 2, 3, 4, 5, 6]) >>> np.column_stack([np.array([1, 2, 3]), np.array([4, 5, 6])]) array([[1, 4], [2, 5], [3, 6]]) 当然对等地,也存在,np.vstack, np.row_…
二.np.identity()这个函数和之前的区别在于,这个只能创建方阵,也就是N=M 函数的原型:np.identity(n,dtype=None) 参数:n,int型表示的是输出的矩阵的行数和列数都是n dtype:表示的是输出的类型,默认是float 返回的是nxn的主对角线为1,其余地方为0的数组 案例: import numpy as np a=np.identity(3)print(a)结果: [[1. 0. 0.] [0. 1. 0.] [0. 0. 1.]] ----------…
求取向量二范数,并求取单位向量(行向量计算) import numpy as np x=np.array([[0, 3, 4], [2, 6, 4]]) y=np.linalg.norm(x, axis=1, keepdims=True) z=x/y x 为需要求解的向量, y为x中行向量的二范数, z为x的行方向的单位向量. np.linalg.norm 顾名思义,linalg=linear+algebra ,norm 则表示范数,首先需要注意的是范数是对向量(或者矩阵)的度量,是一个标量(s…
一 .  np.vstack: 按垂直方向(行顺序)堆叠数组构成一个新的数组 In[3]: import numpy as np In[4]: a = np.array([[1,2,3]]) a.shape Out[4]: (1, 3) In [5]: b = np.array([[4,5,6]]) b.shape Out[5]: (1, 3) In [6]: c = np.vstack((a,b)) # 将两个(1,3)形状的数组按垂直方向叠加 print(c) c.shape # 输出形状为…
numpy 常用工具函数 —— np.bincount/np.average numpy 常用api(一) numpy 常用api(二) 一个函数提供 random_state 的关键字参数(keyword parameter):是为了结果的可再现性(reoccurrence)或叫可重复性. 1. np.bincount():统计次数 接口为: numpy.bincount(x, weights=None, minlength=None) 1 尤其适用于计算数据集的标签列(y_train)的分布…
aroundnp.around 返回四舍五入后的值,可指定精度. around(a, decimals=0, out=None) a 输入数组 decimals 要舍入的小数位数. 默认值为0. 如果为负,整数将四舍五入到小数点左侧的位置 · # -*- coding: utf-8 -*-"""@author: tz_zs"""import numpy as np n = np.array([-0.746, 4.6, 9.4, 7.447, 10…
NumPy学习笔记 二 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.<数学分析>第四版(华东师范大学数学系).<概率论与数理统计>(陈希孺,中科大出版).<概率论与数理统计>第二版(茆诗松.程依明等编).<组合最优化:理论与方法>(现代数学译丛23).笔记二主要记录数据获取,沪深证券市场的A股股票数据. 获取的股票数据周期包括5分钟.15分钟…
content: range() np.arange() np.linspace() 一.range(start, stop, step) 1.range() 为 python 自带函数 2.生成一个从start(包含)到stop(不包含),以step为步长的序列.返回一个 list 对象 range(stop) 返回 range object range(start, stop[, step]) 返回 range object 3.start默认为0,stop是必须的,step默认为1,可正可…
numpy的mean(),std()等方法是作用于整个numpy数组的,如果是二维数组的话,也是整个数组,包括所有行和列,但我们经常需要它仅作用于行或者列,而不是整个二维数组,这个时候,可以定义轴axis: axis=表示作用于列 axis=表示作用于行 以sum()求和方法为例: import numpy as np a = np.array([ [1, 2, 3], [4, 5, 6], [7, 8, 9] ]) print a.sum() print a.sum(axis=0)# 表示对各…
python创建二维 list 的方法是在 list 里存放 list : l = [[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]] numpy可以直接创建一个二维的数组: import numpy as np l = np.array([ [1,2,3,4], [5,6,7,8], [9,10,11,12], [13,14,15,16] ]) numpy二维数组获取某个值: [a, b] :  a 表示行索引, b 表示列索引,就是获取第 a 行…
本文转载自:https://blog.csdn.net/u012609509/article/details/70230204 Python中的几种矩阵乘法1. 同线性代数中矩阵乘法的定义: np.dot()np.dot(A, B):对于二维矩阵,计算真正意义上的矩阵乘积,同线性代数中矩阵乘法的定义.对于一维矩阵,计算两者的内积.见如下Python代码: import numpy as np # 2-D array: 2 x 3two_dim_matrix_one = np.array([[1,…
使用array时,运算符 * 用于计算数量积(点乘),函数 dot() 用于计算矢量积(叉乘).使用matrix时,运算符 * 用于计算矢量积,函数 multiply() 用于计算数量积. 下面是使用array时: 1. 同线性代数中矩阵乘法的定义: np.dot() np.dot(A, B):对于二维矩阵,计算真正意义上的矩阵乘积,同线性代数中矩阵乘法的定义.对于一维矩阵,计算两者的内积. 2. 对应元素相乘 element-wise product: np.multiply(), 或 * 在…
在Numpy中建立了数组或者矩阵后,需要访问数组里的成员,改变元素,并对数组进行切分和计算. 索引和切片 Numpy数组的访问模式和python中的list相似,在多维的数组中使用, 进行区分: 在python的list 下: a = [1,2,4] print a[2:] 打印出: [4] 这是一个数组,在Numpy的多维数组中也采用相同的模式进行数组的访问: import numpy as np a = np.arange(1,37) a = a.reshape(6,6) print a 打…
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…
np.ceil(多维数组):对多维数组的各个数向上取整 np.floor(多维数组):对多维数组的各个数向下取整 np.expand_dims(x,axis = 0):在x的第一维度上插入一个维度,axis=1,在x的第二个维度上插入一个维度 例如: x = np.array([[1,2,3],[4,5,6]])print (x)print (x.shape) 结果: [[1 2 3] [4 5 6]](2, 3) axis = 0: y = np.expand_dims(x,axis=0)pr…
导入h5py的时候,报错: /home/harris/anaconda3/lib/python3.6/site-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype…
目录 range np.arange np.linspace range 特点 range()是python内置函数,指定开始值,终值和步长生成等差数列的一维数组 不包含终值 步长只能是整数,生成整数类型 返回的是range对象 测试代码 a = range(1,10,1) print(a) b = range(1,10,3) print(b) c = range(1,10,0.5) print(c) 运行结果 a和b成功生成range对象 c报错 np.arange 特点 np.arange(…
在算法复杂度分析的过程中,人们常常用特定的函数来描述目标算法,随着变量n的增长,时间或者空间消耗的增长曲线,近而进一步分析算法的可行性(有效性). 引入了Big-O,Big-Ω,来描述目标算法的上限.下限复杂度函数. 用Big-Θ描述和目标函数同序的复杂度函数,即由Big-Θ既是上限也是下限. 常常用到如下时间复杂度函数标度 1, log n, n, n log n, n^2, 2^n, n! 通常将具有n^x,x为正整数形式的时间复杂度函数称为多项式复杂度. 通常认为具有多项式时间复杂度的算法…
原博客链接:https://blog.csdn.net/tz_zs/article/details/80775256 np.around: 四舍五入取整 n = np.array([-0.746, 4.6, 9.4, 7.447, 10.455, 11.555]) around1 = np.around(n) print(around1) # [ -1. 5. 9. 7. 10. 12.] np.floor: 向下取整 n = np.array([-1.7, -2.5, -0.2, 0.6, 1…
numpy.delete numpy 下的多维数组,如果要删除其中的某些行,或某些列,不可以用置空的方式,进行设置: A[1, :] = None, ⇒ 会将 A 中的第一行数据全部置为 Nan 1. 使用切片(slice) 比如删除第一行: B = A[1:, :] 注意此时得到的 B 是 A 通过切片索引的方式得到的,也即 B 相当于 A 的一个视图(view),此时对 B 的任何修改操作,也会顺带修改 A 中的相应数据. 2. 使用 mask 删除第 0 列和第 2 列: mask = […
本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是Numpy专题的第二篇,我们来进入正题,来看看Numpy的运算. 上一篇文章当中曾经提到过,同样大小的数据,使用Numpy的运算速度会是我们自己写循环来计算的上百倍甚至更多.并且Numpy的API非常简单,通常只要简单几行代码就可以完成非常复杂的操作. 计算与广播 在Python中的数组无论是什么类型,我们是无法直接对其中所有的元素进行计算的.想要做到这一点,必须要通过map这样的方式操作.而Numpy当中,我们可以很方便地对一整…
使用numpy库可以快速将一个二维数组进行转置,方法有三种 1.使用numpy包里面的transpose()可以快速将一个二维数组转置 2.使用.T属性快速转置 3.使用swapaxes(1, 0)方法 t5 = np.arange(12).reshape(3, 4) print(t5) print("*"*20) # 将t5矩阵进行转置 t6 = t5.transpose() print(t6) print("*"*20) t7= t5.T print(t7) p…
如果一个算法的最差时间效率属于O(p(n)),则该算法可以在多项式的时间内对问题进行求解,其中p(n)是输入规模n的一个多项式函数. 可以在多项式时间内求解的问题是易解的.不能在多项式时间内求解的问题是难解的. 判定问题是能够回答是或否的问题,通常第一,只有判定问题才属于P. P类问题是一类能够用确定性的算法,在多项式的时间内求解的判定问题,这种问题类型也称为多项式类型. 为什么要将P约束为判定问题? 1.不能在多项式时间内求解的问题会产生指数级的巨大输出. 2.许多重要问题可以化简为一系列更容…
Numpy 中的数组比 Python 原生中的数组(只支持整数类型与浮点类型)强大的一点就是它支持更多的数据类型. 基本数据类型 numpy常见的数据类型 数据类型 描述 bool_ 布尔(True或False),存储为一个字节 int_ 默认整数类型(与C long相同:通常为int64或int32) intc 与C int(通常为int32或int64)相同 intp 用于索引的整数(与C ssize_t相同:通常为int32或int64) int8 字节(-128到127) int16 整…
import numpy as np import matplotlib.pyplot as plt def fix_seed(seed=1): #重复观看一样东西 # reproducible np.random.seed(seed) # make up data建立数据 fix_seed(1) x_data = np.linspace(-7, 10, 2500)[:, np.newaxis] #水平轴-7~10 np.random.shuffle(x_data) noise = np.ran…
np.ogrid: address:https://docs.scipy.org/doc/numpy/reference/generated/numpy.ogrid.html returns an open (i.e. not fleshed out) mesh-grid when indexed, only one dimension of each returned array is greater than 1. The dimension and number of the output…
以上三个函数,主要区别在于能够拓展维度上和重复方式: np.tile() 能够拓展维度,并且整体重复: a = np.array([0,1,2]) np.tile(a,(2,2)) # out # array([[0, 1, 2, 0, 1, 2], [0, 1, 2, 0, 1, 2]]) 2. np.repeat()能够将多维flatten一维后,进行个体重复: b = np.array([[1,2,3],[4,5,6]]) np.repeat(b,3) # out #array([1, 1…
ndarray的简单数学计算就和普通的a+b,a-b,a*b,a/b等类似. 关于ndarray的切片: arr[n]:寻找第n个元素(针对一维)arr[n:m]:从下标为n元素开始,截取到下标为m-1的位置ndarray的广播赋值: arr[n:m] = x 从下标为n元素开始,截取到下标为m-1的位置对应的值都变成x单个赋值: obj = arr[n:m], obj[i] = x, 将截取出来obj里的下标为i的值更改为x 二维数组:arr[n,m]:寻找第n+1行m+1列对应的元素 高维数…