创建ndarray
Numpy最重要的一个特点就是其N维数组对象(即ndarray),该对象是一个快速而灵活的大数据集容器,是一个通用的同构数据多维容器,也就是说,其中的所有元素必须是相同类型的。
创建数组最简单的方法就是array函数,它接受一切序列型的对象(包括其他数组),然后产生一个新的含有传入数据的Numpy数组。
以一个列表为例:
In [2]: import numpy as np In [3]: simple = [1,2.3,4,5] In [4]: arr = np.array(simple) In [5]: arr
Out[5]: array([ 1. , 2.3, 4. , 5. ])
嵌套序列(比如由一组等长列表组成的列表)将会被转换为一个多维数组:
In [6]: simple1 = [[1,2,3,4],[5,6,7,8]] In [7]: arr1 = np.array(simple1) In [8]: arr1
Out[8]:
array([[1, 2, 3, 4],
[5, 6, 7, 8]]) In [9]: arr1.ndim 获得数组的维数
Out[9]: 2 In [10]: arr1.shape
Out[10]: (2, 4)
除非显示说明,np.array会尝试为新建的数组推断出一个较为合适的数据类型,数据类型保存在一个特殊的dtype对象中。
In [12]: arr.dtype
Out[12]: dtype('float64') In [13]: arr1.dtype
Out[13]: dtype('int64')
除了np.array之外,还有一些函数也可以新建数组。比如zeros和ones分别可以创建指定长度或形状的全0或全1数组。empty可以创建一个没有任何具体值的数组。要用这些方法创建多维数组,只需传入一个表示形状的元祖即可。
In [14]: np.zeros(10)
Out[14]: array([ 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.]) In [15]: np.ones(10)
Out[15]: array([ 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.]) In [16]: np.empty((2,3))
Out[16]:
array([[ 0.00000000e+000, 8.20622089e-317, 4.65914971e-317],
[ 6.90846568e-310, 6.90847131e-310, 1.25836781e-316]])
arange是Python内置函数range的数组版
In [17]: np.arange(10)
Out[17]: array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
数组创建函数
| 函数 | 说明 |
| array | 将输入数据(列表、元祖、数组或其他序列类型)转换为ndarray |
| asarray | 将输入转换为ndarray,如果输入本身就是一个ndarray就不进行复制 |
| arange | 类似于内置的range,但返回的是一个ndarray而不是列表 |
| ones、ones_like | 根据指定的形状和dtype创建一个全1数组。ones_like以另一个数组为参数,并根据其形状和dtype创建一个全1数组 |
| zeros、zeros_like | 类似于ones和ones_like,只不过产生的是全0数组而已 |
| empty、empty_like | 创建新数组,只分配内存空间但不填充任何值 |
| eye、identity | 创建一个正方的NxN单位矩阵(对角线为1,其余为0) |
创建ndarray的更多相关文章
- numpy 基于数值范围创建ndarray()
基于数值范围创建函数创建ndarray 1 numpy.arange arange([start=0,] stop[, step=1,][, dtype=None]) >>> np. ...
- numpy 基于现有数据创建ndarray(from existing data)
1 numpy.array array(object[, dtype=None, copy=True, order='K', subok=False, ndmin=0]) 2 numpy.asarra ...
- ndarray 数组的创建和变换
ndarray数组的创建方法 1.从python中的列表,元组等类型创建ndarray数组 x = np.array(list/tuple) x = np.array(list/tuple,dtype ...
- 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍
一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...
- 创建naarray(1)
创建ndarray Numpy创建ndarray的方法比较够用,几乎也就是矩阵运算的常用的方法. 约定: import numpy as np 常用的创建ndarray的函数有:np.array, n ...
- NumPy 超详细教程(3):ndarray 的内部机理及高级迭代
系列文章地址 NumPy 最详细教程(1):NumPy 数组 NumPy 超详细教程(2):数据类型 NumPy 超详细教程(3):ndarray 的内部机理及高级迭代 ndarray 对象的内部机理 ...
- 使用MXNet的NDArray来处理数据
NDArray.ipynb NDArray介绍 机器学习处理的对象是数据,数据一般是由外部传感器(sensors)采集,经过数字化后存储在计算机中,可能是文本.声音,图片.视频等不同形式. 这些数字化 ...
- Python3NumPy——ndarray对象
Python3NumPy——ndarray对象 1.前沿 推荐导入语法:import numpy as np NumPy中使用ndarray对象表示数组,ndarray是NumPy库的核心对象 2.创 ...
- NumPy 从已有的数组创建数组
NumPy 从已有的数组创建数组 本章节我们将学习如何从已有的数组创建数组. numpy.asarray numpy.asarray 类似 numpy.array,但 numpy.asarray 只有 ...
随机推荐
- shell的date命令:使用方法,以及小时、分钟的计算
shell命令格式严格,不像python那样命令行中可以添加空格.如等号两边无空格.有多余空格错误,日期date命令就是最明显的例子. 命令格式: date [-u] [-d datestr] [-s ...
- C语言中 sscanf 的用法
名称: sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型: Int sscanf( string str, string fmt, mixed var1, mixed var2 ...
- Spring AOP (二)
下面介绍@AspectJ语法基础 一.切点表达式函数 AspectJ的切点表达式由关键字和操作参数组成,如execution(* greetTo(..)) 的切点表达式,execution为关键字,而 ...
- android 向webview传值
android中可以使用WebView加载网页,同时Android端的java代码可以与网页上的javascript代码之间相互调用. 效果图: (一)Android部分: 布局代码: <spa ...
- Android Bootloader LittleKernel的两篇文章
Android 开发之 ---- bootloader (LK) LK是什么 LK 是 Little Kernel 它是 appsbl (Applications ARM Boot Loader)流程 ...
- CCT之CAMERA TUNNING调试学习总结
原创链接:点击打开链接 对于MT6589平台camera调试的学习总结,camera调试学习的是对于raw类sensor的调试,对于yuv格式的sensor是由FAE帮助我们调试的. 首先在调试一个c ...
- linux文件查找及操作
在linux下查找文件的办法最常用的就是find指令,让我们来看一下find指令如何来使用吧: find find . -name txt //在当前目录查找名字为txt的文 ...
- 解决水平ListView在ScrollView中出现的滑动冲突
解决的问题有两个: 1)实现水平滑动的ListView.重写AdapterView,上代码: package com.liucanwen.horizontallistview.view; imp ...
- 【11】-java递归和非递归二叉树前序中序后序遍历
二叉树的遍历 对于二叉树来讲最主要.最基本的运算是遍历. 遍历二叉树 是指以一定的次序访问二叉树中的每个结点.所谓 访问结点 是指对结点进行各种操作的简称.例如,查询结点数据域的内容,或输出它的值,或 ...
- Demo4
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...