numpy中np.array()与np.asarray的区别有哪些
1. np.array()和np.asarray()的定义
np.array()和np.asarray()都是NumPy库中用于创建数组的函数。
np.array()函数将输入数组转换为ndarray对象,如果没有指定dtype参数,则会根据输入数据的类型自动推断出合适的数据类型。
np.asarray()函数将输入数据转换为ndarray对象,如果输入数据已经是ndarray类型,则会返回相同的对象,否则会创建一个新的ndarray对象。
2. 参数使用
np.array()函数有两个常用的参数:
- object:输入的数组形式的数据,可以是列表、元组等。
- dtype:指定输出数组的数据类型,默认为None,即会自动根据输入数据类型推断出合适的数据类型。
示例:
import numpy as np
arr1 = np.array([1, 2, 3])
arr2 = np.array([1, 2, 3], dtype=float)
print(arr1) # [1 2 3]
print(arr2) # [1. 2. 3.]
np.asarray()函数只有一个常用的参数:
- a:输入的数组形式的数据。
示例:
import numpy as np
arr1 = [1, 2, 3]
arr2 = (1, 2, 3)
arr3 = np.asarray(arr1)
arr4 = np.asarray(arr2)
print(arr3) # [1 2 3]
print(arr4) # [1 2 3]
3. 返回值类型
np.array()函数返回一个ndarray对象,即NumPy数组,该对象具有数组相关的属性和方法。
示例:
import numpy as np
arr1 = np.array([1, 2, 3])
arr2 = np.array([(1, 2, 3), (4, 5, 6)])
print(type(arr1)) # <class 'numpy.ndarray'>
print(type(arr2)) # <class 'numpy.ndarray'>
np.asarray()函数返回一个ndarray对象,即NumPy数组,该对象具有数组相关的属性和方法。
示例:
import numpy as np
arr1 = [1, 2, 3]
arr2 = (1, 2, 3)
arr3 = np.asarray(arr1)
arr4 = np.asarray(arr2)
print(type(arr3)) # <class 'numpy.ndarray'>
print(type(arr4)) # <class 'numpy.ndarray'>
总结:
np.array()和np.asarray()都可以将输入的数据转换为NumPy数组。两者的参数使用上略有不同,np.array()函数可以指定数据类型,而np.asarray()函数只需传入数据即可。
然而,np.array()函数在输入数据是ndarray类型时,会创建一个新的ndarray对象;而np.asarray()函数则会直接返回输入数据的ndarray对象,不会创建新对象。
因此,可根据具体需求选择使用np.array()函数还是np.asarray()函数。如果需要创建新的对象,或者不确定输入数据类型是否是ndarray,可以使用np.array()函数;如果已经确定输入数据类型是ndarray,且希望返回相同的对象,则可使用np.asarray()函数。
猜您想看
-
如何解决PXE服务器环境搭建流程中遇到的问题
一、PXE服务...
2023年05月26日 -
SAP MM MB5M报表不显示特殊库存数据该怎么办
问题描述当在S...
2023年07月20日 -
Typecho 如何添加侧边栏小工具
如何添加侧边栏...
2023年04月15日 -
rtthread的使用分析
1. rtth...
2023年07月22日 -
使用Prometheus和Grafana为HiveMQ做一套监控体系的示例分析
概述HiveM...
2023年07月21日 -
C#中的Task怎么理解
Task是什么...
2023年07月20日