NumPy常用操作

NumPy提供了两种基本对象:ndarray,ufunc

生成ndarray

1、从已有数据中创建
(1)将列表转换成ndarray

import numpy as np
list1 = [3.14,2.17,0,1,2]
nd1 = np.array(list1)
print(nd1)
print(type(nd1))

(2)嵌套列表可以转化成多维ndarray

list2 = [[3.14,2.17,0,1,2],[1,2,3,4,5]]
nd2  = np.array(list2)
print(nd2)
print(type(nd2))

2、利用random模块生成ndarray

import numpy as np
nd5 = np.random.random([3,3])
print(nd5)
print(type(nd5))
#生成一个随机种子,对生成的随机书打乱
np.random.seed(123)
nd5_1 = np.random.randn(2,3)
print(nd5_1)
np.random.shuffle(nd5_1)
print('随机打乱数据后:')
print(nd5_1)
print(type(nd5_1))

3、创建特定形状的多维数组

import numpy as np
#生成全是0的3*3矩阵
nd6 = np.zeros([3,3])
#生成全是1的3*3矩阵
nd7 = np.ones([3,3])
#生成3阶的单位矩阵
nd8 = np.eye(3)
#生成3阶的对角矩阵
nd9 = np.diag([1,2,1])
print(nd6)
print(nd7)
print(nd8)
print(nd9)
#存取磁盘
np.savetxt(X=nd9,fname='./test2.txt')
np10 = np.loadtxt('./test2.txt')
print(np10)

4、利用arange函数

import numpy as np
print(np.arange(10))
print(np.arange(0,10))
print(np.arange(0,4,0.5))
print(np.arange(9,-1,-1))

存取元素

import numpy as np
from numpy import random as nr
np.random.seed(2018)
nd11 = np.random.random([10])
print(nd11)
#第四个元素
print(nd11[3])
#截取一段数据
print(nd11[3:6])
#截取固定间隔的数
print(nd11[1:6:2])
#倒取数字
print(nd11[::-2])
nd12 = np.arange(25).reshape([5,5])
#截取多维数组中一个区域内的数据
print(nd12[1:3,1:3])
#截取多维数组中,数值在一个值域内的数据
print(nd12[(nd12>3)&(nd12<10)])
#截取2,3行
print(nd12[[1,2]])
print(nd12[1:3,:])
#取2,3列
print(nd12[:,1:3])
#随机抽取数字
a = np.arange(1,25,dtype = float)
print(a)
c1 = nr.choice(a,size=(3,4))#size指输出数组的形状
c2 = nr.choice(a,size=(3,4),replace=False)#replace为True,即可重复抽取
print(c1)
print(c2)
c3 = nr.choice(a,size=(3,4),p = a/np.sum(a))#概率抽取
print(c3)

矩阵操作

import numpy as npnd14 = np.arange(9).reshape([3,3])
print(nd14)
#转制
np.transpose(nd14)
print(nd14)
#矩阵乘法
a = np.arange(12).reshape([3,4])
print(a)
b = np.arange(8).reshape([4,2])
print(b)
print(a.dot(b))
#矩阵的迹
print(a.trace())
#矩阵行列式
print(np.linalg.det(nd14))
#计算矩阵的逆
c = np.random.random([3,3])
print(c)
print(np.linalg.solve(c,np.eye(3)))

数据合并与展平

1、合并一维数组

import numpy as npa = np.array([1,2,3])
b = np.array([4,5,6])
c = np.append(a,b)
print(a)
print(b)
print(c)
#利用concatenate
d = np.concatenate([a,b])
print(d)

2、合并多维数组

a = np.arange(4).reshape(2,2)
b= np.arange(4).reshape(2,2)
#当axis无定义时,是横向加成,返回总是为一维数组
#当axis为0时,数组是加在下面(列数要相同)
#当axis为1时,数组是加在右边(行数要相同)
c = np.append(a,b,axis=0)
print(c)
c = np.append(a,b,axis=1)
print(c)

3、矩阵展平

nd15 = np.arange(6).reshape(2,-1)
print(nd15)
#按列展平
print(nd15.ravel('F'))
#按行展平
print(nd15.ravel())

通用函数

广播机制

import numpy as np
a = np.arange(10)
print(a)
b = np.arange(10)
print(b)
print(a+b)
print(a+3)
print(a*b)
c = np.arange(10).reshape([5,2])
d = np.arange(2).reshape([1,2])
print(c+d)

Python深度学习基予tensorflow(Numpy)相关推荐

  1. Python深度学习:基于TensorFlow

    作者:吴茂贵,王冬,李涛,杨本法 出版社:机械工业出版社 品牌:机工出版 出版时间:2018-10-01 Python深度学习:基于TensorFlow

  2. [Python深度学习入门]实战一·Numpy梯度下降求最小值

    [深度学习入门]实战一·Numpy梯度下降求最小值 问题描述: 求解y1 = xx -2 x +3 + 0.01*(-1到1的随机值) 与 y2 = 0 的最小距离点(x,y) 给定x范围(0,3 不 ...

  3. 深度学习必备书籍——《Python深度学习 基于Pytorch》

    作为一名机器学习|深度学习的博主,想和大家分享几本深度学习的书籍,让大家更快的入手深度学习,成为AI达人!今天给大家介绍的是:<Python深度学习 基于Pytorch> 文章目录 一.背 ...

  4. 《Python 深度学习》-弗朗索瓦 肖莱-(一)双系统ubuntu及TensorFlow系统安装

    目录 1.写在前面 2.ubuntu安装 2.1第一次安装 2.2重新安装ubuntu 3 CUDA 和 cuDNN安装 3.1失败的安装(希望遇见同样问题能参考) 3.2 通过Anaconda安装T ...

  5. python神经网络原理pdf_《深度学习原理与 TensorFlow实践》高清完整PDF版 下载

    1.封面介绍 2.出版时间 2019年7月 3.推荐理由 本书介绍了深度学习原理与TensorFlow实践.着重讲述了当前学术界和工业界的深度学习核心知识:机器学习概论.神经网络.深度学习.着重讲述了 ...

  6. Python 深度学习

    Pytorch 一 .深度学习概览 1.工具篇 2.流程介绍 3.基础知识(常用操作) 1.数据结构类型 4.常见名词概念 二.深度学习Pytorch 1.神经网络 1.1 如何构建神经网络 1.2 ...

  7. Python深度学习篇

    Python深度学习篇一<什么是深度学习> Excerpt 在过去的几年里,人工智能(AI)一直是媒体大肆炒作的热点话题.机器学习.深度学习 和人工智能都出现在不计其数的文章中,而这些文章 ...

  8. 《Python深度学习》第五章-5(可视化过滤器)读书笔记

    5.4 卷积神经网络的可视化 卷积神经网络学到的表示非常适合可视化,很大程度上是因为它们是视觉概念的表示\color{red}视觉概念的表示视觉概念的表示.接下来介绍3种可视化方法. 事中\color ...

  9. python书籍读后感_《Python深度学习》读书记录

    提前声明:以下内容是本人读<Python深度学习>的个人笔记 第一部分:基础 数据存储在多维 Numpy 数组中,也叫张量(tensor) 仅包含一个数字的张量叫作标量(scalar,也叫 ...

最新文章

  1. 浅谈javascript中的数据类型和引用类型
  2. Zepto源代码分析之二~三个API
  3. 你不是在拯救世界就是在拯救世界的路上
  4. android-apt-compiler: Cannot run program D:\android-sdk\platform-tools\aapt
  5. 三级栏目选项卡 html,李长河 中文主页 实验题目三级页面(隐藏栏目,用于放置对应三级页面) 中国地质大学(武汉)教师个人主页系统...
  6. 一个产品留言统计查寻的分析比较
  7. Dart核心基础List概述
  8. 地宫取宝|2014年蓝桥杯B组题解析第九题-fishers
  9. 力扣491. 递增子序列(JavaScript)
  10. ( cf1249 )Codeforces Round #595 (Div. 3)部分题解
  11. 小满 前端埋点SDK 带你 从0 开发 并且发布npm
  12. Matlab绘制图像(plot函数)
  13. 前端技术教学第一周 10.15
  14. 接口授权时已经有access_token了为啥还需要refresh_token
  15. php正则表达式在线测试工具,在线测试正则表达式工具:适合asp.net vb.net cs.net等Web或者Windows程序,便于你快速编写正确正则表达式,提供正则表达式模板供参考。...
  16. 解决Chrome插件安装时报错:“Manifest file is missing or unreadable“
  17. android 屏蔽系统输入法自定义输入法的详解
  18. 王者荣耀s14服务器维护时间,王者荣耀s14更新时间是什么时候 王者荣耀s14赛季时间...
  19. 记一次app爬虫sign破解
  20. jvm一般相关配置OutOfMemoryError关参数配置解释

热门文章

  1. muduo多线程异步日志分析
  2. 彩色图像和三维数组结构分析
  3. 劳易测光学测距传感器AMS 348i 120 SSI
  4. C++输入个数不定的数字
  5. 开发指南:BUMO 资产发行 JAVA 开发指南
  6. Error:(4, 35) java: 程序包org.springframework.context不存在
  7. 分享:文件加密-闪灵文件夹锁如何快速加密大数据文件
  8. 计算机网络实验项目一
  9. 灵魂诗句——《绿袖》
  10. win7计算机盘符显示在左侧,官方Win7旗舰版系统怎样显示隐藏盘符