np.zeros(10,dtype=int) #创建全为0的一位数组

np.ones((3,5),dtype=float) #创建3*5的二维全为1的数组

np.full((3,5),3.14) #创建全为3.14的3*5数组

np.arange(0,20,2)  #创建0-20步长为2的线性序列数组 和range相似

np.linspace(0,1,5)  #创建0-1之间的5个数数组

np.random.random((3,3)) #创建3*3在0-1之间均匀分布的随机数组成的数组

np.random.normal(0,1,(3,3)) #创建3*3的均值为0方差为1的正态分布随机数数组

np.random.randint(0,10,(3,3)) #创建3*3在0-10区间的随机整数型数组

np.eye(3) # 创建3*3的单位矩阵

np.empty(3) #创建一个有3个整数型组成的未初始化数组,值可以使内存空间的任意值

np属性:

  np.ndim 数组的维度

  np.shape 数组的每个维度大小

  np.size  数组的总大小

  dtype 数据类型

切片,索引:

  x=np.array([5,2,3,7,8,9])

  x[0] #取索引为0的值

  x[-1] #取最后一个值

  x2=np.arange(0,24).reshape((3,8))

  x2[0,1] #取行索引为0列索引为1的值

  x2[0,0]=12 #修改值

  #当将一个浮点型插入到整数型数组中时,浮点型会被截断

  

  一维切片:

  x=np.arange(10)

  x[:5]  #取前五个元素

  x[5:] #取后五个元素

  x[4:7] # 取中间子数组

  x[::2]  #步长为2取出数组

  x[::-1] #逆向取数组

  

  多维切片:

  x2=np.arange(12).reshape((3,4))

  x2[:2,:3] #两行三列

  x2[:3,::2] #取三行,列隔行取

  x2[::-1,::-1] # 逆向取

  x2[:,0] #取第一列

  x2[0,:] # 取第一行

  x2[0]  #取第一行简化

*注意切片获取到的元素改变原数组也会改变,需加copy

  

  reshape重组数组

  np.arange(12).reshape((3,4)) #重组成3*4的二维数组

  x2[np.newaxis,:]  #获取行向量

  x2[:,np.newaxis] #获取列向量

  

  数组拼接:

  一维数组:   

  x=np.array([1,2,3])
  y=np.array([3,2,1])
  z=np.array([4,5,6])

  np.concatenate([x,y,z])

  

  二维数组:

  x=np.arange(12).reshape((3,4))

  y=np.arange(12,24).reshape((3,4))

  np.concatenate([x,y],axis=1) # axis=1左右拼接,axis=0上下拼接

  np.vstack 垂直栈函数,上下拼接,np.hstack 水平栈左右拼接

  np.dstack 沿第三个维度拼接

  

数组分裂:

  x=[1,2,3,55,55,3,2,1]

  x1,x2,x3 = np.split(x,[3,5])

  vsplit 行分裂,hspit列分裂,dsplit第三维度分裂

  

  

numpy(一)的更多相关文章

  1. 利用Python进行数据分析(5) NumPy基础: ndarray索引和切片

    概念理解 索引即通过一个无符号整数值获取数组里的值. 切片即对数组里某个片段的描述. 一维数组 一维数组的索引 一维数组的索引和Python列表的功能类似: 一维数组的切片 一维数组的切片语法格式为a ...

  2. 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍

    一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...

  3. 利用Python进行数据分析(6) NumPy基础: 矢量计算

    矢量化指的是用数组表达式代替循环来操作数组里的每个元素. NumPy提供的通用函数(既ufunc函数)是一种对ndarray中的数据进行元素级别运算的函数. 例如,square函数计算各元素的平方,r ...

  4. python安装numpy、scipy和matplotlib等whl包的方法

    最近装了python和PyCharm开发环境,但是在安装numpy和matplotlib等包时出现了问题,现总结一下在windows平台下的安装方法. 由于现在找不到了工具包新版本的exe文件,所以采 ...

  5. 深入理解numpy

    一.为啥需要numpy python虽然说注重优雅简洁,但它终究是需要考虑效率的.别说运行速度不是瓶颈,在科学计算中运行速度就是瓶颈. python的列表,跟java一样,其实只是一维列表.一维列表相 ...

  6. Python Numpy,Pandas基础笔记

    Numpy Numpy是python的一个库.支持维度数组与矩阵计算并提供大量的数学函数库. arr = np.array([[1.2,1.3,1.4],[1.5,1.6,1.7]])#创建ndarr ...

  7. broadcasting Theano vs. Numpy

    broadcasting Theano vs. Numpy broadcast mechanism allows a scalar may be added to a matrix, a vector ...

  8. python之numpy

    一.矩阵的拼接合并 列拼接:np.column_stack() >>> import numpy as np >>> a = np.arange(9).reshap ...

  9. win7系统下python安装numpy,matplotlib,scipy和scikit-learn

    1.安装numpy,matplotlib,scipy和scikit-learn win7系统下直接采用pip或者下载源文件进行安装numpy,matplotlib,scipy时会遇到各种问题,这是因为 ...

  10. 给numpy矩阵添加一列

    问题的定义: 首先我们有一个数据是一个mn的numpy矩阵现在我们希望能够进行给他加上一列变成一个m(n+1)的矩阵 import numpy as np a = np.array([[1,2,3], ...

随机推荐

  1. java控台输入

    import java.util.Scanner;//访问util包的Scanner(控台输入) public class HelloWorld {public static void main(St ...

  2. Python 八皇后问题

    八皇后问题描述:在一个8✖️8的棋盘上,任意摆放8个棋子,要求任意两个棋子不能在同一行,同一列,同一斜线上,问有多少种解法. 规则分析: 任意两个棋子不能在同一行比较好办,设置一个队列,队列里的每个元 ...

  3. django第三天

    从后台传入一层的字典数据 后台代码 前台代码一 浏览器结果 前台代码二 前台代码三 前台代码四 注意 默认遍历为KEY .values    .keys   .items 都不加括号

  4. Java Spring Boot VS .NetCore (十一)自定义标签 Java Tag Freemarker VS .NetCore Tag TagHelper

    Java Spring Boot VS .NetCore (一)来一个简单的 Hello World Java Spring Boot VS .NetCore (二)实现一个过滤器Filter Jav ...

  5. LeetCode 709.To Lower Case

    Description Implement function ToLowerCase() that has a string parameter str, and returns the same s ...

  6. DAPP 开发直通车-如何基于NEL 轻钱包来开发DAPP

    之前做了 DAPP 开发直通车,通讲了一下开发一个DAPP的过程.   但是涉及多工种,多步骤.入手还是非常困难的.   经过不懈的努力,做了很多铺垫工作之后,我终于可以告诉你:   开发DAPP f ...

  7. leetcode 639 Decode Ways II

    首先回顾一下decode ways I 的做法:链接 分情况讨论 if s[i]=='*' 考虑s[i]单独decode,由于s[i]肯定不会为0,因此我们可以放心的dp+=dp1 再考虑s[i-1] ...

  8. leetcode 91 Decode Ways I

    令dp[i]为从0到i的总方法数,那么很容易得出dp[i]=dp[i-1]+dp[i-2], 即当我们以i为结尾的时候,可以将i单独作为一个字母decode (dp[i-1]),同时也可以将i和i-1 ...

  9. centos中安装基础环境

    进入到相关目录cd /usr/bin安装python3yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-dev ...

  10. 构建Maven父子工程

    IDEA构建maven父子工程:  1.打开IDEA,Create New Project 如图:   如果没有弹出新建界面,可以先 file-->Close Project 如图: 2.创建父 ...