原文:Python Numpy 教程


NumPy提供了使用现有数据创建数组的方法。

numpy.asarray

要使用列表或元组创建ndarray数组,可使用asarray函数。这个函数通常用于将python序列转换为numpy数组对象的场景中。

语法如下所示:

numpy.asarray(sequence,  dtype = None, order = None)

参数:

  • sequence: 要被转换成ndarray数组的python序列。
  • dtype: 指定数组元素的数据类型。
  • order: 可以设置为'C'或'F',表示c语言形式的内存顺序(按行排列),或者Fortran语言形式的内存顺序(按列排列)。默认值是C。

示例

使用列表创建numpy数组

import numpy as np
l=[1,2,3,4,5,6,7]
a = np.asarray(l);
print(type(a))
print(a)

输出

<class 'numpy.ndarray'>
[1 2 3 4 5 6 7]

示例

使用元组创建一个ndarray数组

import numpy as np
l=(1,2,3,4,5,6,7)
a = np.asarray(l);
print(type(a))
print(a)

输出

<class 'numpy.ndarray'>
[1 2 3 4 5 6 7]

示例

使用多个列表创建ndarray数组

import numpy as np
l=[[1,2,3,4,5,6,7],[8,9]]
a = np.asarray(l);
print(type(a))
print(a)

输出

<class 'numpy.ndarray'>
[list([1, 2, 3, 4, 5, 6, 7]) list([8, 9])]

numpy.frombuffer

要使用指定的缓冲区创建数组,可以用frombuffer函数。

语法如下所示:

numpy.frombuffer(buffer, dtype = float, count = -1, offset = 0)

参数:

  • buffer: 缓冲区对象(具有缓冲区接口)。
  • dtype: 指定数组元素的数据类型。
  • count: 指定数组长度。默认值是-1。
  • offset: 表示要读取的缓冲区起始位置。默认值为0。

示例

import numpy as np
l = b'hello world'
print(type(l))
a = np.frombuffer(l, dtype = "S1")
print(a)
print(type(a))

输出

<class 'bytes'>
[b'h' b'e' b'l' b'l' b'o' b' ' b'w' b'o' b'r' b'l' b'd']
<class 'numpy.ndarray'>

numpy.fromiter

要使用可迭代对象创建ndarray数组,可以使用fromiter函数。fromiter函数返回一个一维的ndarray数组。

语法如下所示:

numpy.fromiter(iterable, dtype, count = - 1)

参数:

  • iterable: 表示一个可迭代的对象。
  • dtype: 指定数组元素的数据类型。
  • count: 表示要从数组中的缓冲区读取的项数。

示例

import numpy as np
list = [0,2,4,6]
it = iter(list)
x = np.fromiter(it, dtype = float, count = 2)
print(x)
print(type(x))

输出

[0. 2.]
<class 'numpy.ndarray'>

NumPy 基于已有数据创建数组的更多相关文章

  1. SqlServer2005基于已有表创建分区

    随着当今数据库的容量越来越快的朝着在大型数据库或超大型数据库的发展,对于数据库中的大 型表以及具有各种访问模式的表的可伸缩性和可管理性运行环境变得尤为重要, SQL server 从 SQL serv ...

  2. Numpy | 07 从数值范围创建数组

    numpy.arange ***** 使用numpy 包中的 arange 函数,创建数值范围并返回 ndarray 对象,函数格式如下: numpy.arange(start, stop, step ...

  3. 基于现有图像数据创建自定义像素格式的 BufferedImage

    在最近的一个项目中,需要实现 Mac OS X 环境下的摄像头图像实时捕获并转换为 Java 中的 BufferedImage 对象.首先通过开发一个本地库实现 Mac OS X 的摄像头图像捕获,采 ...

  4. linux下如何基于已有容器创建image并运行?

    1. 通过docker ps命令先找到容器id,示例如下,123456789012就是我们要找的 jello@~$ docker ps CONTAINER ID IMAGE COMMAND CREAT ...

  5. NumPy 基于数值区间创建数组

    来源:Python Numpy 教程 章节 Numpy 介绍 Numpy 安装 NumPy ndarray NumPy 数据类型 NumPy 数组创建 NumPy 基于已有数据创建数组 NumPy 基 ...

  6. NumPy来自现有数据的数组

    NumPy - 来自现有数据的数组 这一章中,我们会讨论如何从现有数据创建数组. numpy.asarray 此函数类似于numpy.array,除了它有较少的参数. 这个例程对于将 Python 序 ...

  7. NumPy 从已有的数组创建数组

    NumPy 从已有的数组创建数组 本章节我们将学习如何从已有的数组创建数组. numpy.asarray numpy.asarray 类似 numpy.array,但 numpy.asarray 只有 ...

  8. numpy学习之创建数组

    1.使用array函数创建数组 import numpy as np ndarray1 = np.array([1, 2, 3]) array([1, 2, 3]) ndarray2 = np.arr ...

  9. 『Numpy』内存分析_利用共享内存创建数组

    引.内存探究常用函数 id(),查询对象标识,通常返回的是对象的地址 sys.getsizeof(),返回的是 这个对象所占用的空间大小,对于数组来说,除了数组中每个值占用空间外,数组对象还会存储数组 ...

随机推荐

  1. pip使用镜像的方法

    http://e.pypi.python.org/这个就是官网了,清华大学提供的 建议非清华大学校内的使用这个镜像: http://e.pypi.python.org/simple(这也是一个http ...

  2. 小陈WEB漏洞扫描器 V2.0

    小陈WEB漏洞扫描器 V2.0 小陈WEB漏洞扫描器 V2.0 https://pan.baidu.com/s/1NSmFCyxowEa3YlOuhvtwwQ

  3. 六、java基础-单例模式_继承_覆盖_多态

    1.单例模式: 1)提出原因 是由gof 也就是四人组提出来的.为了保证jvm中某一类型的java对象永远只有一个,同时也是为了节省内存的开销.因为外面程序可以通过new的方法直接调用类里面的构造方法 ...

  4. Hadoop的伪分布式安装和部署的流程

    1.准备工作 下载一些用到的命令 yum install -y vim yum install -y lrzsz yum install net-tools 目录约定 /opt #工作目录 /opt/ ...

  5. AJAX的兼容处理方式

    AJAX在网站服务中使用到频率很高,也需要考虑各个浏览器版本的兼容性,本示例中详细介绍简单快捷的处理兼容性问题. <!DOCTYPE HTML> <html> <head ...

  6. 在React中随机生成图形验证码

    各个方法 在输入框中定义一个位置存放图形 完整代码 方便复制粘贴 import React, { Component } from 'react'; import styles from './lef ...

  7. hdu 3549 Flow Problem 最大流问题 (模板题)

    Flow Problem Time Limit: 5000/5000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)Tota ...

  8. [DllImport("kernel32.dll")]

    这叫引入kernel32.dll这个动态连接库. 这个动态连接库里面包含了很多WindowsAPI函数,如果你想使用这面的函数,就需要这么引入.举个例子: [DllImport("kerne ...

  9. string.xml中的空格

    <string name="userName">    用    户    名</string>

  10. linux下python开发环境的安装

    1.准备编译环境 yum groupinstall 'Development Tools' yum install zlib-devel bzip2-devel openssl-devel ncurs ...