NumPy中np.array和np.asarray的异同点

2024-05-07 11:38
文章标签 异同 np array numpy asarray

本文主要是介绍NumPy中np.array和np.asarray的异同点,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  • 相同点:两者都可以根据传入的结构数据(如列表)创建一个ndarray数组对象。

  • 不同点:当数据源是ndarray时,array仍然会copy出一个副本,占用新的内存,即创建一个新的对象;但asarray不会,与原数据共享同一内存。

  • np.array() 函数原型:

    def array(a, dtype=None, order=None):return array(a, dtype, copy=True, order=order)
    

    说明:Create an array. array() 方法创建一个新的对象。

  • np.asarray() 函数原型:

    def asarray(a, dtype=None, order=None):return array(a, dtype, copy=False, order=order)
    

    说明:Convert the input to an array。asarray() 方法将原数据转换为新的ndarray 对象。

Example

# 原数据为列表类型
score = [70, 75, 78]
arr1 = np.array(score)
arr2 = np.asarray(score)
score[1] = 100    # 改变原数据
print("score: ", score)
print("arr1: ", arr1)
print("arr2: ", arr2)

输出结果:
score: [70, 100, 78]
arr1: [70 75 78]
arr2: [70 75 78]

原数据为列表类型时,改变原数据,array 和asarray 方法返回的对象都没有发生变化。

# 原数据为ndarray 数组
score = np.array([70, 75, 78])
arr1 = np.array(score)
arr2 = np.asarray(score)
score[1] = 100   # 改变原数据
print("score: ", score)
print("arr1: ", arr1)
print("arr2: ", arr2)

输出结果:
score: [ 70 100 78]
arr1: [70 75 78]
arr2: [ 70 100 78]

原数据为ndarray 数组时,改变原数据,array 方法返回的对象没有变化,而asarray 方法返回的对象跟着改变。

这篇关于NumPy中np.array和np.asarray的异同点的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/967250

相关文章

JavaScript Array.from及其相关用法详解(示例演示)

《JavaScriptArray.from及其相关用法详解(示例演示)》Array.from方法是ES6引入的一个静态方法,用于从类数组对象或可迭代对象创建一个新的数组实例,本文将详细介绍Array... 目录一、Array.from 方法概述1. 方法介绍2. 示例演示二、结合实际场景的使用1. 初始化二

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

numpy求解线性代数相关问题

《numpy求解线性代数相关问题》本文主要介绍了numpy求解线性代数相关问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 在numpy中有numpy.array类型和numpy.mat类型,前者是数组类型,后者是矩阵类型。数组

python科学计算:NumPy 线性代数与矩阵操作

1 NumPy 中的矩阵与数组 在 NumPy 中,矩阵实际上是一种特殊的二维数组,因此几乎所有数组的操作都可以应用到矩阵上。不过,矩阵运算与一般的数组运算存在一定的区别,尤其是在点积、乘法等操作中。 1.1 创建矩阵 矩阵可以通过 NumPy 的 array() 函数创建。矩阵的形状可以通过 shape 属性来访问。 import numpy as np# 创建一个 2x3 矩阵mat

探索Python的数学魔法:Numpy库的神秘力量

文章目录 探索Python的数学魔法:Numpy库的神秘力量背景:为什么选择Numpy?Numpy是什么?如何安装Numpy?五个简单的库函数使用方法场景应用常见Bug及解决方案总结 探索Python的数学魔法:Numpy库的神秘力量 背景:为什么选择Numpy? 在Python的世界中,数据处理和科学计算是不可或缺的一部分。但原生Python在处理大规模数据时可能会显

【uva】11536-Smallest Sub-Array(区间移动问题)

一个区间移动的问题,1A了,感觉没什么好说的。。 13975926 11536 Smallest Sub-Array Accepted C++ 0.809 2014-08-01 11:00:20 #include<cstdio>#include<cstring>#include<iostream>using namespace std;#define INF 1 << 30

leetCode#448. Find All Numbers Disappeared in an Array

Description Given an array of integers where 1 ≤ a[i] ≤ n (n = size of array), some elements appear twice and others appear once. Find all the elements of [1, n] inclusive that do not appear in this

Numpy random.random()函数补充

np.random.random() np.random.random()的作用是生成指定形状的均匀分布的值为[0,1)的随机数 参数为size,也就是用于指定的形状大小 import numpy as npprint(np.random.random(size=(2, 2)))# [[0.19671797 0.85492315]# [0.99609539 0.66437246]]

解决RuntimeError: Numpy is not available

运行项目时,遇到RuntimeError: Numpy is not available 这是因为Numpy 版本太高,将现有Numpy卸载 pip uninstall numpy 安装numpy=1.26.4,解决此问题 pip install numpy=1.26.4 -i https://pypi.tuna.tsinghua.edu.cn/simple

做一个问卷考试,标准答案对比用户填写的答案,array_diff 进行差集比对

if( empty(array_diff($answer_mark, $answer)) && empty(array_diff( $answer,$answer_mark))){//用户答题正确}else{// 答题错误} 做一个问卷考试,标准答案对比用户填写的答案,array_diff  进行差集比对   如用户填写的答案变量为answer   标准答案为answer_mark