NumPy - 数组函数

NumPy - 数组函数 首页 / Numpy入门教程 / NumPy - 数组函数

在本章中,无涯教程将讨论如何从现有数据创建数组。

numpy.asarray

该函数与numpy.array相似,除了它具有较少的参数,该程对于将Python序列转换为ndarray很有用。

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

构造函数采用以下参数。

Sr.No.Parameter & 描述
1

a

以任何形式输入数据,如列表,元组列表,元组,或列表元组

2

dtype

默认情况下,输入数据的数据类型应用于输出ndarray

3

order

C(行)或F(列)。 C是默认值

以下示例说明了如何使用 asarray 函数。

示例1

# 将list列表转换为 ndarray
import numpy as np 

x = [1,2,3] 
a = np.asarray(x) 
print a

其输出如下-

[1  2  3] 

示例2

# dtype is set 
import numpy as np 

x = [1,2,3]
a = np.asarray(x, dtype = float) 
print a

现在,输出将如下所示:

[ 1.  2.  3.] 

示例3

#ndarray from tuple 
import numpy as np 

x = (1,2,3) 
a = np.asarray(x) 
print a

它的输出将是-

[1  2  3]

示例4

# ndarray from list of tuples 
import numpy as np 

x = [(1,2,3),(4,5)] 
a = np.asarray(x) 
print a

在这里,输出将如下所示:

[(1, 2, 3) (4, 5)]

numpy.frombuffer

此函数将缓冲区解释为一维数组,公开缓冲区接口的任何对象都用作返回 ndarray 的参数。

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

构造函数采用以下参数。

Sr.No.Parameter & 描述
1

buffer

任何公开缓冲区接口的对象

2

dtype

返回的ndarray的数据类型。默认为浮动

3

count

要读取的项目数,默认为-1表示所有数据

4

offset

要读取的起始位置。默认为0

以下示例演示了 frombuffer 函数的用法。

import numpy as np 
s = 'Hello World' 
a = np.frombuffer(s, dtype = 'S1') 
print a

这是它的输出-

['H'  'e'  'l'  'l'  'o'  ' '  'W'  'o'  'r'  'l'  'd']

numpy.fromiter

此函数从任何可迭代对象中构建一个 ndarray对象 ,此函数返回一个新的一维数组。

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

在这里,构造函数采用以下参数。

Sr.No.Parameter & 描述
1

iterable

任何可迭代的对象

2

dtype

输出数组的数据类型

3

count

要从迭代器读取的项目数。默认值为-1,表示要读取的所有数据

以下示例说明如何使用内置的 range()函数返回列表对象 。此列表的迭代器用于形成 ndarray对象 。

示例1

# 使用range函数创建列表对象
import numpy as np 
list = range(5) 
print list

其输出如下-

[0,  1,  2,  3,  4]

示例2

# 从list列表中获取迭代器对象
import numpy as np 
list = range(5) 
it = iter(list)  

# 使用迭代器创建ndarray
x = np.fromiter(it, dtype = float) 
print x

现在,输出将如下所示:

[0.   1.   2.   3.   4.]

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

MySQL实战45讲 -〔林晓斌〕

Flutter核心技术与实战 -〔陈航〕

即时消息技术剖析与实战 -〔袁武林〕

人人都能学会的编程入门课 -〔胡光〕

Java业务开发常见错误100例 -〔朱晔〕

技术管理案例课 -〔许健〕

体验设计案例课 -〔炒炒〕

快手 · 移动端音视频开发实战 -〔展晓凯〕

Web 3.0入局攻略 -〔郭大治〕

好记忆不如烂笔头。留下您的足迹吧 :)