Day 19 numpy 模块
numpy 模块(多维数组)
import numpy as np
arr=np.array([1,2,3,4],[5,6,7,8])
print(arr)
#[[1 2 3 4]
#[5 6 7 8]]
arr.shape #(2, 4) 得到的是这个数组有多少行 多少列
#多维数组的索引
arr.shape[0] #2 得到的是行数
arr.shape[1] #4 得到的是列数
arr[1,2] #7 按索引取值
- 高级功能
import numpy as ap
arr = np.array([[1000,2,300,4],[5,600,7,8] ,[5,6,700,8]])
print(arr)
arr>200
array([[ True, False, True, False],
[False, True, False, False],
[False, False, True, False]])
arr[arr>200]
array([1000, 300, 600, 700])
- 多维数组的元素替换
arr = np.array( [ [1000,2,300,4], [5,600,7,8] ,[5,6,700,8] ] )
arr[1,1]=0
array([[1000, 2, 300, 4],
[ 5, 0, 7, 8],
[ 5, 6, 700, 8]])
arr = np.array( [ [1000,2,300,4], [5,600,7,8] ,[5,6,700,8] ] )
arr[arr>200] = 0
array([[0, 2, 0, 4],
[5, 0, 7, 8],
[5, 6, 0, 8]])
- 多维数组的合并
arr1= np.array([ [1,2,3,4],[5,6,7,8] ])
arr2= np.array([ [9,10,11,12],[13,14,15,16] ])
#vstack和hstack只能放一个参数,这个参数必须得是容器
np.vstack((arr1,arr2)) # vertical
array([[ 1, 2, 3, 4],
[ 5, 6, 7, 8],
[ 9, 10, 11, 12],
[13, 14, 15, 16]])
np.hstack([arr1,arr2]) # horizon
array([[ 1, 2, 3, 4, 9, 10, 11, 12],
[ 5, 6, 7, 8, 13, 14, 15, 16]])
np.concatenate((arr1,arr2)) # 默认垂直
array([[ 1, 2, 3, 4],
[ 5, 6, 7, 8],
[ 9, 10, 11, 12],
[13, 14, 15, 16]])
np.concatenate((arr1,arr2),axis=0) # 默认垂直
array([[ 1, 2, 3, 4],
[ 5, 6, 7, 8],
[ 9, 10, 11, 12],
[13, 14, 15, 16]])
np.concatenate((arr1,arr2),axis=1) # 默认垂直
array([[ 1, 2, 3, 4, 9, 10, 11, 12],
[ 5, 6, 7, 8, 13, 14, 15, 16]])
- 通过函数方法创建多维数组
1.创建一维数组
np.arange(10)
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
np.arange(1,10,2)
array([1, 3, 5, 7, 9])
ones
np.ones((3,4))
array([[1., 1., 1., 1.],
[1., 1., 1., 1.],
[1., 1., 1., 1.]])
zeros
np.zeros((3,4,5)) # 5控制一维,4,5控制二维,3,4,5三维
array([[[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.]],
[[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.]],
[[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.]]])
eye
np.eye(5) # 5,5
array([[1., 0., 0., 0., 0.],
[0., 1., 0., 0., 0.],
[0., 0., 1., 0., 0.],
[0., 0., 0., 1., 0.],
[0., 0., 0., 0., 1.]])
矩阵的运算
+ 两个矩阵对应元素相加
- 两个矩阵对应元素相减
* 两个矩阵对应元素相乘
/ 两个矩阵对应元素相除,如果都是整数则取商
% 两个矩阵对应元素相除后取余数
**n 单个矩阵每个元素都取n次方,如**2:每个元素都取平方
最大值
array([[1, 2, 3, 4],
[5, 6, 7, 8]])
arr1.max() #8
arr1.min() #1
numpy生成随机数
np.random.seed(1) # 永不随机,固定
np.random.rand(3,4)
Day 19 numpy 模块的更多相关文章
- Python:基本运算、基本函数(包括复数)、Math模块、NumPy模块
基本运算 x**2 : x^2 若x是mat矩阵,那就表示x内每个元素求平方 inf:表示正无穷 逻辑运算符:and,or,not 字典的get方法 a.get(k,d) 1 1 get相当于一条if ...
- Pathon中numpy模块
目录 numpy模块 切割矩阵 矩阵元素替换 矩阵的合并 通过函数创建矩阵 fromstring/fromfunctions 矩阵的运算 常用矩阵运函数 矩阵的点乘 矩阵的逆 矩阵的其他操作 nump ...
- 开发技术--Numpy模块
开发|Numpy模块 Numpy模块是数据分析基础包,所以还是很重要的,耐心去体会Numpy这个工具可以做什么,我将从源码与 地产呢个实现方式说起,祝大家阅读愉快! Numpy模块提供了两个重要对象: ...
- numpy模块常用函数解析
https://blog.csdn.net/lm_is_dc/article/details/81098805 numpy模块以下命令都是在浏览器中输入. cmd命令窗口输入:jupyter note ...
- numpy模块的基本使用
numpy(Numerical Python)提供了python对多维数组对象的支持:ndarray,具有矢量运算能力,快速.节省空间.numpy支持高级大量的维度数组与矩阵运算,此外也针对数组运算提 ...
- Python之路-numpy模块
这里是首先需要安装好Anaconda Anaconda的安装参考Python之路-初识python及环境搭建并测试 配置好环境之后开始使用Jupyter Notebook 1.打开cmd,输入 jup ...
- 【Python 数据分析】Numpy模块
Numpy模块可以高效的处理数据,提供数组支持.很多模块都依赖他,比如:pandas.scipy.matplotlib 安装Numpy 首先到网站:https://www.lfd.uci.edu/~g ...
- python numpy模块
目录 numpy模块 一维数组 二维数组(用的最多的) 获取多维数组的行和列 多维数组的索引 高级功能 多维数组的元素的替换 通过函数方法创建多维数组 矩阵的运算 点乘和转置(了解) 点乘必须 m*n ...
- Python及bs4、lxml、numpy模块包的安装
http://blog.csdn.net/tiantiancsdn/article/details/51046490(转载) Python及bs4.lxml.numpy模块包的安装 Python 的安 ...
随机推荐
- HDU 2348
DFS+博弈. 假设存在两数(x,y),且x<y.对于(x+ky,y)k>=2,只能转移向两种状态(x+y,y),或者(x,y).而对于(x+y,y)只能向(x,y)转移,那么,可知,无论 ...
- 发现百度开源一个好东西,Echarts统计报表前段框架
1,如今数据越来越重要了 可是数据报表的可视化展示一直是个问题. 如今好了.有Echarts能够解决一部分数据展示的问题. http://echarts.baidu.com/index.html 类似 ...
- C\C++控制台颜色设置类
windows和Linux都可用的一个类...用来设置颜色,没有太复杂.简单够用吧. #ifdef _WIN32 #include <Windows.h> class FontColor ...
- LeetCode208:Implement Trie (Prefix Tree)
Implement a trie with insert, search, and startsWith methods. Note: You may assume that all inputs a ...
- Android HAL模块实现
1. HAL介绍 Android的HAL(Hardware Abstract Layer硬件抽象层)是为了保护一些硬件提供商的知识产权而提出的.是为了避开linux的GPL束缚. 思路是把控制硬件的动 ...
- Python 网络爬虫与信息获取(二)—— 页面内容提取
1. 获取超链接 python获取指定网页上所有超链接的方法 links = re.findall(b'"((http|ftp)s?://.*?)"', html) links = ...
- 【BZOJ 2565】 最长双回文串
[题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=2565 [算法] Manacher [代码] #include<bits/std ...
- 520D
模拟 很明显应该尽量选最大或最小的数.那么我们维护一个set,再维护一个mp,每次检查是否能选,如果选完这个数上面的东西不悬空就可以选,每次选完都要更新四周-2+2的方块,因为再远就影响不到了 #in ...
- 捣鼓TinyMCE粘贴图片并上传+Flask后台
好久没有编程了,最近需要完成一个小功能,为了方便,需要粘贴图片后上传到后台.前台编辑器用tinymce(N年前用过,我也就知道这个编辑器而已.这次使用下来感觉文档更丰富了),后台我用的Flask.昨天 ...
- Gym - 101981K The 2018 ICPC Asia Nanjing Regional Contest K.Kangaroo Puzzle 暴力或随机
题面 题意:给你1个20*20的格子图,有的是障碍有的是怪,你可以每次指定上下左右的方向,然后所有怪都会向那个方向走, 如果2个怪撞上了,就融合在一起,让你给不超过5w步,让所有怪都融合 题解:我们可 ...