1. 创建numpy数组

1.1 通过tuple和list创建数组

import numpy as np

通过tuple

t=(1,2,3)
a=np.array(t,dtype= 'int')
#array([1, 2, 3])

通过list

list1 = [1,2,3]
a = np.array(list1,dtype='int')
#array([1, 2, 3])

用多个list创建多维数组

list1 = [1,2,3]
list2 = [4.2,5.1,6.3]
b = np.array([list1,list2])
#array([[1. , 2. , 3. ],[4.2, 5.1, 6.3]])
b.dtype
#dtype('float64')

改变dtype

c = np.array( [ [1,2], [3,4] ], dtype=complex )
#array([[1.+0.j, 2.+0.j],[3.+0.j, 4.+0.j]])
c.shape
#(2, 2)

1.2 创建特殊数组

np.zeros([2,4])
#array([[ 0.,  0.,  0.,  0.],[ 0.,  0.,  0.,  0.]])
np.ones([2,3])
#array([[ 1.,  1.,  1.],[ 1.,  1.,  1.]])
np.empty([3,2])
#array([[1., 1.],[1., 1.],[1., 1.]])
#return a new array of given shape and type, without initializing entries.
np.eye(3)
#array([[1., 0., 0.],[0., 1., 0.],[0., 0., 1.]])
np.arange(2,10,2)
#array([2, 4, 6, 8])
np.linspace(0,10,4)
#array([ 0., 3.33333333,  6.66666667, 10.])
#4 numbers from 0 to 10 , 等分
np.linspace(0,10,3)
#array([  0.,   5.,  10.])

2. numpy数组的基本运算

2.1 算术运算

a = np.array([[1,2,3],[4,5,6]])
#array([[1, 2, 3],[4, 5, 6]])a * a
#array([[ 1,  4,  9],[16, 25, 36]])a ** 3
#array([[  1,   8,  27],[ 64, 125, 216]], dtype=int32)a + a
#array([[ 2,  4,  6],[ 8, 10, 12]])
1/a
#array([[1.        , 0.5       , 0.33333333],[0.25      , 0.2       , 0.16666667]])

2.2 矩阵运算

A = np.array( [[1,3],[0,1]] )
B = np.array( [[2,2],[3,4]] )
#array([[1, 3],[0, 1]])
#array([[2, 2],[3, 4]])

矩阵相乘

np.dot(A, B)  #A.dot(B)
#array([[11, 14],[ 3,  4]])
#A*B是元素相乘,两者不同

矩阵相加

np.add(A, B)
#array([[3, 5],[3, 5]])

2.3 其他运算

a = np.random.random([3,3])
array([[0.19176092, 0.92224897, 0.61994304],[0.80936465, 0.02533119, 0.72779562],[0.29421129, 0.35640441, 0.87175173]])
# np.random.random是在[0.0, 1.0) 之间生成随机数字a.sum()
4.818811836180757a.min()
0.025331193574141042a.max()
0.9222489672128614
np.random.randn(3,3)
array([[ 0.94114569, -1.11281987, -0.16988063],[ 0.11768634,  0.16164328, -0.15441487],[-0.18021596, -0.46057389, -0.80320574]])
# 以0为中心的高斯分布
np.random.normal([1,2,3])
array([ 1.49216002,  4.30790776,  2.59977786])
# 正太分布numpy.random.normal(loc=0.0, scale=1.0, size=None)
b = np.arange(24).reshape(6,4)
array([[ 0,  1,  2,  3],[ 4,  5,  6,  7],[ 8,  9, 10, 11],[12, 13, 14, 15],[16, 17, 18, 19],[20, 21, 22, 23]])# 关于 axis: axis=0 是沿着列操作  axis=1 是沿着行操作
b.sum(axis=0)
array([60, 66, 72, 78])b.sum(axis=1)
array([ 6, 22, 38, 54, 70, 86])b.min(axis=1)
array([ 0,  4,  8, 12, 16, 20])b.cumsum(axis=1) # 累计相加 cumulative sum along each row
array([[ 0,  1,  3,  6],[ 4,  9, 15, 22],[ 8, 17, 27, 38],[12, 25, 39, 54],[16, 33, 51, 70],[20, 41, 63, 86]], dtype=int32)

【numpy学习笔记】数组的创建和基本运算相关推荐

  1. numpy 学习笔记

    numpy 学习笔记 导入 numpy 包 import numpy as np 声明 ndarray 的几种方法 方法一,从list中创建 l = [[1,2,3], [4,5,6], [7,8,9 ...

  2. 【Numpy学习笔记】

    Numpy学习笔记 1. NumPy的详细教程(官网手册翻译) https://blog.csdn.net/xiaoxiangzi222/article/details/53084336 2. 学习笔 ...

  3. Numpy学习笔记(下篇)

    目录 Numpy学习笔记(下篇) 一.Numpy数组的合并与分割操作 1.合并操作 2.分割操作 二.Numpy中的矩阵运算 1.Universal Function 2.矩阵运算 3.向量和矩阵运算 ...

  4. Go语言学习笔记-数组、切片、map

    Go语言学习笔记-数组.切片.map 数组:同一数据类型元素的集合.是值类型,长度固定无法修改 声明格式:var 数组名字 [元素数量] 数据类型 var arr [3] int //声明定义了一个长 ...

  5. NumPy学习笔记前言

    前言目录 NumPy学习笔记前言 NumPy简介 NumPy学习准备 NumPy中文网 NumPy学习笔记前言 这里主要分享一下我个人学习NumPy的笔记,希望大家多多交流学习,这也是我第一次写CSD ...

  6. Java 学习笔记 - 数组类型互转

    Java 学习笔记 - 数组类型互转 数组类型转换 字符串数组 to (Integer.Long.Double)列表 传统方式 Java8 Stream方式 数组 to 数组 字符串数组 to (in ...

  7. NumPy学习笔记 二

    NumPy学习笔记 二 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.<数学分 ...

  8. NumPy学习笔记 一

    NumPy学习笔记 一 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.<数学分 ...

  9. c语言中void arrout,c语言学习笔记(数组、函数

    <c语言学习笔记(数组.函数>由会员分享,可在线阅读,更多相关<c语言学习笔记(数组.函数(53页珍藏版)>请在人人文库网上搜索. 1.数组2010-3-29 22:40一维数 ...

  10. 【opencv学习笔记八】创建TrackBar轨迹条

    createTrackbar这个函数我们以后会经常用到,它创建一个可以调整数值的轨迹条,并将轨迹条附加到指定的窗口上,使用起来很方便.首先大家要记住,它往往会和一个回调函数配合起来使用.先看下他的函数 ...

最新文章

  1. 哈佛大学惊人发现:新冠对人类未来影响巨大!
  2. python截图识别文字_用百度ocr+微信截图实现文字识别
  3. android跨进程事件注入(程序模拟用户输入)
  4. C#中的表达式与运算符
  5. meta 标签的详细使用
  6. 洛谷P1007 独木桥(贪心)
  7. 《数据挖掘概念与技术》第三版 范明 孟小峰译 课后习题答案(一)
  8. html视频播放错误怎么办,如何解决播放视频错误代码0xc00d36c4
  9. 超子的水族箱升级计划
  10. 2020支付宝五福AR图
  11. 沃尔什矩阵_大卫·沃尔什(David Walsh):失落的MooTools插件
  12. STM32:SPI驱动ADXL345
  13. 64位linux默认内存对齐,Linux内存初始化(汇编部分)
  14. 一句平静而感人的英文电影对白
  15. 【桌游】微信小程序——线下桌游预约
  16. 蓝桥杯CT107D:关于矩阵键盘工作原理及其应用
  17. 技术分享| 视频监控融合方案
  18. mysql分片做主从_使用mycat部署mysql集群(分片,读写分离,主从复制)
  19. canvas入门初探—实现人物移动动画
  20. 火狐浏览器CSS兼容的解决方法~

热门文章

  1. CodeForces 157A Game Outcome
  2. typeof操作符的返回值
  3. COJN 0575 800601滑雪
  4. Flex精华摘要--使用AS脚本
  5. 参考答案:01 线性方程组
  6. 一份来自山东院校的考研调剂系统已开放名单!
  7. 如何在Matlab中获取函数参数的数目?
  8. 图像补运算:反色处理
  9. AI 监视打工人,这个国家明确说:保护我方“摸鱼权”!
  10. 了解这4个重点,带你探索未来将如何设计智能系统和机器人!