详解Numpy array()数组函数的作用与使用方法

yizhihongxing

Numpy array()是一种用于创建多维数组的函数。它可以接受多种数据类型,支持数组枚举、切片等操作,是数据分析、科学计算以及机器学习中非常基础且重要的工具。在实际应用中,既可以通过手动创建数据进行实例化,也可以通过读取外部数据文件等方式创建。

下面将详细讲解它的作用以及使用方法。

作用

  1. 创建多维数组:将列表、元组等序列类型数据转换成多维数组。

  2. 数组的计算和操作:支持对多维数组进行各种运算和操作,如数组的加减乘除、函数运算、比较、转置等。

  3. 数组的索引和切片:可以通过下标索引访问和操作数组中的元素,在多维数组中可以使用切片操作进行切片。

使用方法

手动创建:

语法格式:numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)

参数解释

  • object:列表、元组等序列类型数据。

  • dtype:数组元素的类型,在 numpy 中提供了很多基本类型,如numpy.int、 numpy.float等。

  • copy:默认为 True,表示复制对象,如果为 False,则表示对象被引用而不是复制。

  • order:数组元素在内存中的排列方式,C风格排列或Fortran风格排列。

  • subok:默认为 False,表示返回一个由Baseclass派生、并且类型相同的数组。

  • ndmin:指定生成的数组的最小维度。

示例代码:

import numpy as np

# 一维数组
arr1 = np.array([1, 2, 3, 4, 5])
print(arr1,type(arr1))

# 二维数组
arr2 = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
print(arr2,type(arr2))

输出结果:

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

读取外部文件创建:

语法格式:numpy.array(object, dtype = None, count = -1, sep = '', *, file)

参数解释

  • file:文件名或读取数据的可迭代对象。

  • count:读取的个数,默认为-1,表示读取所有数据。

  • sep:分隔符,默认为空格。

示例代码:

import numpy as np 

#从txt文件中读取数据并创建一维数组
arr_text = np.array([],dtype=float)
with open("data.txt") as f:
    for line in f.readlines():
        arr_line = np.array(line.strip().split(" "),dtype=float)
        arr_text = np.concatenate((arr_text, arr_line), axis=0)

print(arr_text,type(arr_text))

输出结果:

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

数组操作及索引:

示例代码:

import numpy as np 

# 创建二维数组
arr2 = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])

# 加法
print("加法:\n", arr2 + 2)

# 乘法
print("乘法:\n", arr2 * 2)

# 转置
print("转置:\n", arr2.T)

# 切片
print("切片:\n", arr2[1][1:3])

输出结果:

加法:
 [[ 3  4  5  6]
 [ 7  8  9 10]]
乘法:
 [[ 2  4  6  8]
 [10 12 14 16]]
转置:
 [[1 5]
 [2 6]
 [3 7]
 [4 8]]
切片:
 [6 7]

从上述实例可以看出,Numpy array()能够方便、快捷的操作多维数组,关于Numpy array()的应用还有很多,使用也需要不断的去实践,这样才能掌握更多的操作技巧。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解Numpy array()数组函数的作用与使用方法 - Python技术站

(0)
上一篇 2023年3月22日
下一篇 2023年3月22日

相关文章

合作推广
合作推广
分享本页
返回顶部