ndarray一个强大的N维数组对象Array

•ndarray的操作

  • 索引
a = np.arange(24).reshape((2,3,4))
print(a)
#[[[ 0 1 2 3]
# [ 4 5 6 7]
# [ 8 9 10 11]]
#
# [[12 13 14 15]
# [16 17 18 19]
# [20 21 22 23]]]
print(a[1,2,3])
#23
print(a[0,1,2])
#6
print(a[-1,-2,-3])
#17
  • 切片
a = np.arange(24).reshape((2,3,4))
print(a)
#[[[ 0 1 2 3]
# [ 4 5 6 7]
# [ 8 9 10 11]]
#
# [[12 13 14 15]
# [16 17 18 19]
# [20 21 22 23]]] print(a[:,1,-3])
#[5,17] print(a[:,1:3,:])#第二个维度内切片 和list类似
#[[[4,5,6,7]
#[8,9,10,11]]
#
#[[16,17,18,19]
#[20,21,22,23]]] print(a[:,:,::2])#和list类似,步长
#[[[0,2][[[ 0 2]
# [ 4 6]
# [ 8 10]]
#
# [[12 14]
# [16 18]
3 [20 22]]]

•ndarray的运算

  • 数组与标量之间的运算作用于数组的所有元素
x = np.arange(24).reshape((2,3,4))
print(a)
#[[1 1 1 1]
# [1 1 1 1]
# [1 1 1 1]]
print(a/4)
# [[0.25 0.25 0.25 0.25]
# [0.25 0.25 0.25 0.25]
# [0.25 0.25 0.25 0.25]]
  • 一元函数

a = np.arange(1,25).reshape((2,3,4))
print(np.abs(a))
print("-----------------------------")
print(np.fabs(a))
print("-----------------------------")
print(np.sqrt(a))
print("-----------------------------")
print(np.square(a))
print("-----------------------------")
print(np.log(a))
print("-----------------------------")
print(np.log10(a))
print("-----------------------------")
print(np.log2(a))
print("-----------------------------")
print(np.ceil(a))
print("-----------------------------")
print(np.floor(a))
print("-----------------------------")
a,b= np.modf(a)
print("整数部分:")
print(a)
print("小数部分:")
print(b)
  • 二元函数

b = np.square(a)
print(b)
#元素的最大值计算
print(np.maximum(a,b))
print(np.fmax(a,b))
# #元素的最小值计算
print(np.minimum(a,b))
print(np.fmin(a,b))
#元素的模运算
#a中元素对b中元素取模
print(np.mod(a,b))
#b中元素对a中元素取模
print(np.mod(b,a))
# 将数组b中的个元素的符号赋值给数组a对应元素
b = -b
print(np.copysign(a,b))

Numpy库基础___三的更多相关文章

  1. Numpy库基础___五

    Numpy数据存取 •NumPy的随机数函数 a = np.random.rand(1,2,3) print(a) #[[[0.03339719 0.72784732 0.47527802] # [0 ...

  2. Numpy库基础___四

    Numpy数据存取 •数据的csv文件的存取 只能有效存取和读取一维和二维数据 a = np.arange(100).reshape(5,20) #用delimiter分割,默认为空格 np.save ...

  3. Numpy库基础___一

    ndarray一个强大的N维数组对象Array •ndarray的建立(元素默认浮点数) 可以利用list列表建立ndarray import numpy as np list =[0,1,2,3] ...

  4. Numpy库基础___二

    ndarray一个强大的N维数组对象Array •ndarray的变换 x.reshape(shape)重塑数组的shape,要求元素的个数一致,不改变原数组 x = np.ones((2,3,4), ...

  5. Python数据分析Numpy库方法简介(三)

    补充: np.ceil()向上取整 3.1向上取整是4 np.floor()向下取整 数组名.resize((m,n)) 重置行列 基础操作 np.random.randn()符合正态分布(钟行/高斯 ...

  6. Numpy库的学习(三)

    今天我们继续学习一下Numpy库的学习 废话不多说 ,开始讲 比如我们现在想创建一个0-14这样一个15位的数组 可以直接写,但是很麻烦,Numpy中就给我们了一个方便创建的方法 numpy中有一个a ...

  7. $python数据分析基础——初识numpy库

    numpy库是python的一个著名的科学计算库,本文是一个quickstart. 引入:计算BMI BMI = 体重(kg)/身高(m)^2 假如有如下几组体重和身高数据,让求每组数据的BMI值: ...

  8. Python基础——numpy库的使用

    1.numpy库简介:    NumPy提供了许多高级的数值编程工具,如:矩阵数据类型.矢量处理,以及精密的运算库.专为进行严格的数字处理而产生. 2.numpy库使用: 注:由于深度学习中存在大量的 ...

  9. 初识NumPy库-基本操作

    ndarray(N-dimensional array)对象是整个numpy库的基础. 它有以下特点: 同质:数组元素的类型和大小相同 定量:数组元素数量是确定的 一.创建简单的数组: np.arra ...

随机推荐

  1. jqGrid 修改单元格值或者替换图片及其他

     var rowIds = jQuery("#list1").jqGrid('getDataIDs');                for (var k = 0; k < ...

  2. docker基础——2.镜像管理

    1. Docker镜像的主要特点 (1) 采用分层构建机制. 最底层为bootfs,用于系统引导的文件系统,包括bootloader和kernel,容器启动后会被卸载以节约资源. 其上为rootfs, ...

  3. 总结Tomcat优化方法

    一.内存空间优化 配置文件目录:/usr/local/tomcat/bin/catalina.sh JAVA_OPTS="-server -Xms4g -Xmx4g -XX:NewSize= ...

  4. Solution -「CF 1025D」Recovering BST

    \(\mathcal{Description}\)   Link.   给定序列 \(\{a_n\}\),问是否存在一棵二叉搜索树,使得其中序遍历为 \(\{a_n\}\),且相邻接的两点不互素.   ...

  5. Solution -「CF 1349D」Slime and Biscuits

    \(\mathcal{Description}\)   Link.   有 \(n\) 堆饼干,一开始第 \(i\) 堆有 \(a_i\) 块.每次操作从所有饼干中随机一块,将其随机丢到另外一堆.求所 ...

  6. ASP.NET Core 6框架揭秘实例演示[07]:文件系统

    ASP.NET Core应用具有很多读取文件的场景,如读取配置文件.静态Web资源文件(如CSS.JavaScript和图片文件等).MVC应用的视图文件,以及直接编译到程序集中的内嵌资源文件.这些文 ...

  7. Django创建的第一个项目(2)

    如何创建一个项目?安装好python,pycharm,Django之后,然后在pycharm的命令行django-admin  startproject   MyFirstPjt.MyFirstPjt ...

  8. 面试题(造火箭必备技能):请举例一个最有成就感的性能bug

    当前,绝大部分招聘都有性能要求或者把其作为加分项(会性能优先),哪怕你不是面试的性能,面试的时候可能会问性能,所以大家才会有"面试造火箭,进去拧螺丝"的共鸣.至于企业为什么重视性能 ...

  9. 华为eNSP无限井号#解决方法

    如下图所示,允许ensp相关应用通过防火墙

  10. 【Java分享客栈】我有一个朋友,和前端工程师联调接口被狠狠鄙视了一番。

    前言 我有一个朋友,昨天和前端工程师联调一个接口,然后被狠狠鄙视了一番. 大家知道,自从前后端分离以后,像我一样一直以Java工程师为傲而自居的码圣们就砍掉了一半脊梁,从此被贴上了"Java ...