首页 > 其他分享 >NumPy数组操作

NumPy数组操作

时间:2024-06-20 15:58:53浏览次数:10  
标签:arr arr1 np 数组 print 操作 array NumPy

NumPy数组操作

1.修改形状

arr.reshape(m,n) 
# 将数组修改成m*n的新数组
# 一维数组
import numpy as np

arr = np.arange(10)
arr1 = arr.reshape(2, 5)
print("arr:")
print(arr)
print("arr1:")
print(arr1)
# 二维数组
import numpy as np

arr = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
arr1 = arr.reshape(4, 2)
print("arr:")
print(arr)
print("arr1:")
print(arr1)

2.修改维度

np.array(arr,ndmin=n)
# n表示要转换的维度
import numpy as np

arr = np.array([1, 2, 3, 4, 5, 6, 7, 8])
arr1 = np.array(arr, ndmin=2)
print("arr:")
print(arr)
print("arr1:")
print(arr1)

注:只能低维度转高维度

import numpy as np

# 二维转一维
arr = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
arr1 = np.array(arr, ndmin=1)
print("arr:")
print(arr)
print("arr1:")
print(arr1)

可见转换前后结果相同,虽然没有报错,但无法完成转换。

那么是什么原因呢?我之前的博客曾提过ndmin,ndmin用于指定数组的最小维度,然而这里arr的维度为2,本身已经大于1了,所以并不会进行转换。

3.翻转数组

np.transpose(arr)
# arr: 要翻转的数组
import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
arr1 = np.transpose(arr)
print("arr:")
print(arr)
print("arr1:")
print(arr1)

4.数组去重

np.unique(arr)
# arr:要去重的数组
import numpy as np

arr = np.array([1, 1, 1, 2, 3, 4, 5, 6])
arr1 = np.unique(arr)
print("arr:")
print(arr)
print("arr1:")
print(arr1)

注:函数返回的结果是一维数组

import numpy as np

arr = np.array([[1, 2, 1], [4, 5, 6], [7, 8, 9]])
arr1 = np.unique(arr)
print("arr:")
print(arr)
print("arr1:")
print(arr1)

由此可见,尽管传入的是二维数组,返回的结果依然是一维数组。

标签:arr,arr1,np,数组,print,操作,array,NumPy
From: https://www.cnblogs.com/hanstary/p/18258811

相关文章

  • DEMO_02:随机数获取;数组集合遍历;整型与字符串转换;字符串字符遍历;数组/集合排序
    /***考核点:随机数获取;数组集合遍历;整型与字符串转换;字符串字符遍历;数组/集合排序*<p>*题目:*1.使用while循环获取20个五位数随机数并打印;*2.遍历20个数,筛选出随机数中3的倍数,并统计个数;*3.符合2的数中,找出五位数中3的倍数和位置*4.符合2的数中,把这五位数......
  • 只狼风灵月影修改器操作详解:提升游戏体验的全面教程
     《只狼:影逝二度》是一款由FromSoftware开发,动视发行的动作冒险游戏,设定在日本战国时代,玩家扮演一名忍者,面对残酷的战斗与挑战,在死亡与重生的循环中,拯救被绑架的领主,揭示背后的神秘故事。以其高强度的战斗系统、精妙的关卡设计和深刻的叙事而著称,强调精准时机的格挡与反击机制......
  • 数组合并去重排序
     constarr1=[54,67,89,1,4,3,5,0,0,3]    constarr2=[5,5,6,7,8,3,2,5,7,453,54]    functionpopSort(arr){      for(leti=0;i<arr.length;i++){        for(letj=0;j<arr.leng......
  • 5.22 实验一 数据库和表的建立、数据操作
    实验一 数据库和表的建立、数据操作一、实验目的:掌握使用SQL语言进行数据定义和数据操纵的方法。二、实验要求:建立一个数据库stumanage,建立三个关系表student,course,sc。向表中插入数据,然后对数据进行删除、修改等操作,对关系、数据库进行删除操作。三、实验步骤:1、......
  • 关于数据库的一些常用操作
    数据定义语言(DDL)DDL主要用于创建、修改和删除数据库中的对象,如数据库、表、视图等。创建数据库sql复制代码CREATEDATABASE数据库名;选择数据库sql复制代码USE数据库名;创建表sql复制代码CREATETABLE表名(列名1数据类型1,列名2数据类型2,......
  • 【操作系统】MMAP内存映射|零拷贝
     ......
  • 安装openGauss操作步骤
    操作步骤以root或普通用户登录待安装openGauss的任意主机,并按规划创建存放安装包的目录。mkdir-p/opt/software/openGauss 说明:不建议把安装包的存放目录规划到openGauss用户的根目录或其子目录下,可能导致权限问题。2.将安装包“openGauss-x.x.x-openEuler-64bit-......
  • 安装openGauss操作步骤
    操作步骤以root或普通用户登录待安装openGauss的任意主机,并按规划创建存放安装包的目录。mkdir-p/opt/software/openGauss 说明:不建议把安装包的存放目录规划到openGauss用户的根目录或其子目录下,可能导致权限问题。2.将安装包“openGauss-x.x.x-openEuler-64bit-......
  • JDBC实例:执行遍历查询操作,并打印查询结果
     //导入了Java的SQL包importjava.sql.*;publicclassMain{publicstaticvoidmain(String[]args)throwsException{//注册MySQL的JDBC驱动Class.forName("com.mysql.jdbc.Driver");//连接自己的数据库,我连接了数据库“pinta”St......
  • Vue 中 v-for 的全方位解读:含案例与 key 属性运用及常用数组方法
    目录v-for介绍v-forkey属性的使用Vue数组方法v-for介绍        v-for能够对数字、数组以及对象进行遍历。值得注意的是,当v-for与v-if一同运用时,v-for的优先级要高于v-if。正因如此,应尽量避免将v-if和v-for共同使用。特别是在嵌套使用的情况下,每一......