【Python数组及其基础操作】【numpy ndarray】
一、创建数组
在python中创建数组最简单的办法就是使用array函数。它接受一切序列型的对象,然后产生一个含有传入数据的numpy数组。其中,嵌套序列(比如由一组等长列表组成的列表)会被转换为一个多维数组。
1、array函数:
numpy.array(object, dtype = None, copy = True, order = None, subok = False ,ndmin = 0)
- object 数组或嵌套的数列
- dtype 数组元素的数据类型,可选
- copy 对象是否需要复制,可选
- order 创建数组的样式,C为行方向,F为列方向,A为任意方向(默认)
- subok 默认返回一个与基类类型一致的数组
- ndmin 指定生成数组的最小维度
#将列表转换为数组
import numpy as np
a = [1, 2, 3, 4] #创建列表
b = np.array(a) #将列表转换为数组
#这样就创建完成了一个一维数组 b[1,2,3,4]
#直接创建一维数组
import numpy as np
a = np.array([1, 2, 3, 4])
#创建二维数组
import numpy as np
b = np.arry([ [1, 2, 3], [4, 5, 6], [7, 8, 9] ] )
2、zeros和ones分别可以创建指定长度、形状的全0或全1数组
improt numpy as np
np.zeros(3) #输出结果为[0., 0., 0.] np.ones(3) #输出结果为[1., 1., 1.] np.zeros(3,3)
'''输出结果为[[0., 0., 0.]
[0., 0., 0.]
[0., 0., 0.]] '''
3、创建随机数组
improt numpy as np
np.random.rand(10, 10) #创建指定形状的数组(范围在0,1之间)
np.random.uniform(0,100) #创建指定范围内的一个数
np.random.randint(0, 100) #创建指定范围内的一个整数
np.random.normal(1.7, 0.1, (2, 3)0 #给定均值/标准差/维度的正态分布
4、arange函数:
np.arange(start, stop, step, dtype = None)
根据start(默认为0)和stop指定的范围以及step(默认为1)生成一个数组
import numpy as np
a = np.arange(0, 10, 1)
b = np.arange(10)
a与b相同为array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
5、数组属性
- b.size 数组元素个数
- b.shape 数组形状
- b.ndim 数组维度
- b.dtype 数组元素类型
- b.ltemsize 数组元素字节大小
6、数组索引和切片
import numpy as np
#先定义一个一维数组[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
a = np.arange(10)
>>>a[5]
5
>>>a[2:5]
array([2, 3, 4])
7、基本数组统计方法
可以通过数组上的一组数学函数对整个数组或某个轴向的数据进行统计计算
- sum 对数组中全部或某轴向的元素求和。零长度数组的sum为0
- mean 算数平均数。零长度数组的mean为NaN
- std,var 分别为标准差和方差,自由度可调(默认为n)
- max,min 最大值和最小值
- argmin, argmax 最大和最小元素的索引
- cumsum 所有元素的累加
- cumprod 所有元素的累积
【Python数组及其基础操作】【numpy ndarray】的更多相关文章
- Python科学计算基础包-Numpy
一.Numpy概念 Numpy(Numerical Python的简称)是Python科学计算的基础包.它提供了以下功能: 快速高效的多维数组对象ndarray. 用于对数组执行元素级计算以及直接对数 ...
- 【Learning Python】【第二章】Python基础类型和基础操作
基础类型: 整型: py 3.0解决了整数溢出的问题,意味着整型不必考虑32位,64位,有无符号等问题,你写一个1亿亿亿,就是1亿亿亿,不会溢出 a = 10 ** 240 print(a) 执行以上 ...
- 【Python矩阵及其基础操作】【numpy matrix】
一.矩阵生成 1.numpy.matrix: import numpy as np x = np.matrix([ [1, 2, 3],[4, 5, 6] ]) y = np.matrix( [1, ...
- Python的数据基础库Numpy怎样对数组进行排序
Numpy怎样对数组排序 Numpy给数组排序的三个方法: numpy.sort:返回排序后数组的拷贝 array.sort:原地排序数组而不是返回拷贝 numpy.argsort:间接排序,返回的是 ...
- python文件的基础操作
import os print(,'-')) print(os.getcwd()) print(,'-')) print(os.listdir()) print(,'-')) print(os.lis ...
- Swift - 18 - 数组的基础操作
//: Playground - noun: a place where people can play import UIKit var str = "Hello, playground& ...
- (转)Iphone数组一些基础操作 NSArray/NSMutableArray
/******************************************************************************************* NSArray ...
- Python——控件基础操作
一.生成主窗口(主窗口操作) window=tkinter.Tk() #修改框体的名字,也可在创建时使用className参数来命名: window.title('标题名') #框体大小可调性,分别表 ...
- python Opencv图像基础操作
读取并显示图像 如果读取图像首先要导入OpenCV包,方法为: import cv2 读取并显示图像 img = cv2.imread("C:\test1.jpg") OpenCV ...
随机推荐
- 工具 - SDK安装
Why 在deepin linux上安装Java很头疼.. How 于是有了sdk man! https://sdkman.io/ sdk list java sdk install java < ...
- 例题3_3 回文词(UVa401)
输入一个字符串,判断它是否为回文串以及镜像串.输入字符串保证不含数字0.所谓回文串,就是反转以后和原串相同,如abba和madam.所有镜像串,就是左右镜像之后和原串相同,如2S和3AIAE.注意,并 ...
- python opencv:像素运算
以下运算两个图像的大小需要一样 算术运算: cv2.add(img1, img2):两个图像像素相加 cv2.subtract(img1, img2):两个图像像素相减 cv2.multiply(im ...
- Spring Boot Shiro 使用教程
Apache Shiro 已经大名鼎鼎,搞 Java 的没有不知道的,这类似于 .Net 中的身份验证 form 认证.跟 .net core 中的认证授权策略基本是一样的.当然都不知道也没有关系,因 ...
- Windowserver2012服务器激活方法(亲测可用)---转载
Windowserver2012服务器激活方法(亲测可用)原创꧁刘向洋꧂ 最后发布于2019-03-12 14:46:45 阅读数 5124 收藏展开激活方式 slmgr /ipk D2N9P-3P ...
- Jmeter 如何发起一个post请求
举例平台:https://www.juhe.cn/docs/api/id/65 前提条件: 1)要在聚合网站注册实名认证才可以收到Key,用于Get请求的参数数值 2)Jmeter本地安装好 3.这是 ...
- Codeforces Round #616 (Div. 2) D
莫队的模板 struct node{ int l,r,id; }q[maxn]; int cmp(node a,node b) { ) ? a.r < b.r : a.r > b.r); ...
- FTP 上传下载 进度条
11 /// <summary> /// 文件上传 /// </summary> /// <param name="filePath">原路径( ...
- 【PAT甲级】1061 Dating (20 分)
题意: 给出四组字符串,前两串中第一个位置相同且大小相等的大写字母(A~G)代表了周几,前两串中第二个位置相同且大小相等的大写字母或者数字(0~9,A~N)代表了几点,后两串中第一个位置相同且大小相等 ...
- BinaryTree(二叉树)
我认为二叉树的递归实现体现了递归思想的一些重要性质,如果对递归的理解不够的话,想利用递归来实现是很费劲的(实际上我现在都还有些懵...),虽然会用,但一些地方不能弄清楚原因. 经过几天的学习,看了许多 ...