百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

Python数据分析学习笔记4——NumPy数组元素操作

toyiye 2024-09-04 20:12 5 浏览 0 评论

元素访问

与列表的操作一样。

# -*- coding:utf-8 -*-
import numpy as np
print('一维数组')
nums = [1,2,3,4,5,6,7,8]   #一维数组
arr = np.array(nums)
print('数组',arr)
print('数组的第1个元素:',arr[0])
print('数组的第3个元素:',arr[2])

print('----------分隔线----------')
print('二维数组')
nums = [[1,2,3,4,5],[6,7,8,9,10]]  #二维数组
arr1 = np.array(nums)
print('数组',arr1)
#下述两种方式都是正确的
print('数组的第1行第2个元素:',arr1[0][1])
print('数组的第2行第4个元素:',arr1[1,3])

print('----------分隔线----------')
print('负数下标')
nums = [[1,2,3,4,5],[6,7,8,9,10],[11,12,13,14,15]]  #二维数组
arr2 = np.array(nums)
print('数组',arr2)
print('数组的最后1行最后1个元素:',arr2[-1][-1])
print('数组的倒数第2行倒数3个元素:',arr2[-2,-3])



元素修改

  • 使用下标修改元素值
  • 二维数组可以修改一整行或一整列的元素
 -*- coding:utf-8 -*-
import numpy as np
print('一维数组')
nums = [1,2,3,4,5,6,7,8]   #一维数组
arr = np.array(nums)
print('原数组',arr)
arr[3] = 10    #修改第4个元素
print('修改后的数组',arr)


print('----------分隔线----------')
print('二维数组')
nums = [[1,2,3,4,5],[6,7,8,9,10],[11,12,13,14,15]]  #二维数组
arr1 = np.array(nums)
print('原数组\n',arr1)
arr1[1][3] = 99 #修改第2行第4个元素
print('修改后单个元素后的数组:\n',arr1)
arr1[2] = [99,88,77,66,55] #修改第3行元素
print('修改后整行元素后的数组:\n',arr1)
arr1[:,2] = [99,88,77] #修改第3列元素
print('修改后整列元素后的数组:\n',arr1)



元素添加

语法:numpy.append(arr,value,axis = n)

  • arr:数组
  • value:需要添加的元素
  • axis:用于定义沿着那一条轴进行操作
  • append()不修改原数组,返回一个新数组
# -*- coding:utf-8 -*-
import numpy as np
print('一维数组')
nums = [1,2,3,4,5,6,7,8]   #一维数组
arr = np.array(nums)
print('原数组\n',arr)
reslut = np.append(arr,10)
print('修改后的数组',reslut)


print('----------分隔线----------')
print('二维数组')
nums = [[1,2,3,4,5],[6,7,8,9,10],[11,12,13,14,15]]  #二维数组
arr1 = np.array(nums)
print('原数组\n',arr1)
result = np.append(arr1,[[55,66,77,88,99]],axis = 0)  #axis = 0 表示沿着纵轴方向操作,改变行
print('axis = 0 修改后的数组:\n',result)
result = np.append(arr1,[[55],[66],[77]],axis = 1) #axis = 1 表示沿着横轴方向操作,改变列
print('axis = 1 修改后的数组:\n',result)
result1 = np.append(arr1,[[55],[66],[77],[88]])  #axis 为空, 将两个数组变为一维数组后合并
result2 = np.append(arr1,[[55,66],[77,88]])
result3 = np.append(arr1,[[55,66,77,88]])
print('axis 为空 修改后的数组:\n',result1)
print('axis 为空 修改后的数组:\n',result2)
print('axis 为空 修改后的数组:\n',result3)



元素删除

语法:numpy.delete(arr,m,axis = n)

  • arr:数组
  • m:表示第m+1行 或 m+1列
  • axis:对于二维数组来说, axis=0表示删除第m+1行,axis=1表示删除第m+1列
  • delete()不修改原数组,返回一个新数组
# -*- coding:utf-8 -*-
import numpy as np
print('一维数组')
nums = [1,2,3,4,5]   #一维数组
arr = np.array(nums)
print('原数组\n',arr)
reslut = np.delete(arr,3)#删除第4个元素
print('修改后的数组',reslut)


print('----------分隔线----------')
print('二维数组')
nums = [[1,2,3,4,5],[6,7,8,9,10],[11,12,13,14,15]]  #二维数组
arr1 = np.array(nums)
print('原数组\n',arr1)
result = np.delete(arr1,2,axis = 0)  #axis = 0 删除第3行元素
print('axis = 0 修改后的数组:\n',result)
result = np.delete(arr1,2,axis = 1) #axis = 1 删除第3列元素
print('axis = 1 修改后的数组:\n',result)



数组切片

使用切片来获取数组的某一部分

截取范围 : [m,n)

# -*- coding:utf-8 -*-
import numpy as np
print('一维数组')
nums = [1,2,3,4,5]   #一维数组
arr = np.array(nums)
print('原数组\n',arr)
print('切片后的数组',arr[1:3]) #切片获取第2到第3个元素


print('----------分隔线----------')
print('二维数组')
nums = [[1,2,3,4,5],[6,7,8,9,10],[11,12,13,14,15]]  #二维数组
arr1 = np.array(nums)
print('原数组\n',arr1)
print('获取第1行所有元素\n',arr1[0,:])  #获取第1行所有元素
print('获取第1列所有元素\n',arr1[:,0])  #获取第1列所有元素
print('获取第1行第2到第3个元素\n',arr1[0,1:3])#获取第1行第2到第3个元素
print('获取第1行 第2行及第1列第2列第元素\n',arr1[0:2,0:2])#获取第1行 第2行及第1列第2列第元素


# -*- coding:utf-8 -*-
import numpy as np

print('多维数组')
nums = [[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]]   #三维数组
arr = np.array(nums)
print('原数组\n',arr)


print('NumPy支持使用...来表示剩余的轴')
print(arr[0,...])     #等价与 arr[0,:,:]
print(arr[...,0])    #等价与 arr[:,:,0]
print(arr[:,0,:])   




学习参考资料:《从0到1Python数据分析》

相关推荐

# Python 3 # Python 3字典Dictionary(1)

Python3字典字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中,格式如...

Python第八课:数据类型中的字典及其函数与方法

Python3字典字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值...

Python中字典详解(python 中字典)

字典是Python中使用键进行索引的重要数据结构。它们是无序的项序列(键值对),这意味着顺序不被保留。键是不可变的。与列表一样,字典的值可以保存异构数据,即整数、浮点、字符串、NaN、布尔值、列表、数...

Python3.9又更新了:dict内置新功能,正式版十月见面

机器之心报道参与:一鸣、JaminPython3.8的热乎劲还没过去,Python就又双叒叕要更新了。近日,3.9版本的第四个alpha版已经开源。从文档中,我们可以看到官方透露的对dic...

Python3 基本数据类型详解(python三种基本数据类型)

文章来源:加米谷大数据Python中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。在Python中,变量就是变量,它没有类型,我们所说的"类型"是变...

一文掌握Python的字典(python字典用法大全)

字典是Python中最强大、最灵活的内置数据结构之一。它们允许存储键值对,从而实现高效的数据检索、操作和组织。本文深入探讨了字典,涵盖了它们的创建、操作和高级用法,以帮助中级Python开发...

超级完整|Python字典详解(python字典的方法或操作)

一、字典概述01字典的格式Python字典是一种可变容器模型,且可存储任意类型对象,如字符串、数字、元组等其他容器模型。字典的每个键值key=>value对用冒号:分割,每个对之间用逗号,...

Python3.9版本新特性:字典合并操作的详细解读

处于测试阶段的Python3.9版本中有一个新特性:我们在使用Python字典时,将能够编写出更可读、更紧凑的代码啦!Python版本你现在使用哪种版本的Python?3.7分?3.5分?还是2.7...

python 自学,字典3(一些例子)(python字典有哪些基本操作)

例子11;如何批量复制字典里的内容2;如何批量修改字典的内容3;如何批量修改字典里某些指定的内容...

Python3.9中的字典合并和更新,几乎影响了所有Python程序员

全文共2837字,预计学习时长9分钟Python3.9正在积极开发,并计划于今年10月发布。2月26日,开发团队发布了alpha4版本。该版本引入了新的合并(|)和更新(|=)运算符,这个新特性几乎...

Python3大字典:《Python3自学速查手册.pdf》限时下载中

最近有人会想了,2022了,想学Python晚不晚,学习python有前途吗?IT行业行业薪资高,发展前景好,是很多求职群里严重的香饽饽,而要进入这个高薪行业,也不是那么轻而易举的,拿信工专业的大学生...

python学习——字典(python字典基本操作)

字典Python的字典数据类型是基于hash散列算法实现的,采用键值对(key:value)的形式,根据key的值计算value的地址,具有非常快的查取和插入速度。但它是无序的,包含的元素个数不限,值...

324页清华教授撰写【Python 3 菜鸟查询手册】火了,小白入门字典

如何入门学习python...

Python3.9中的字典合并和更新,了解一下

全文共2837字,预计学习时长9分钟Python3.9正在积极开发,并计划于今年10月发布。2月26日,开发团队发布了alpha4版本。该版本引入了新的合并(|)和更新(|=)运算符,这个新特性几乎...

python3基础之字典(python中字典的基本操作)

字典和列表一样,也是python内置的一种数据结构。字典的结构如下图:列表用中括号[]把元素包起来,而字典是用大括号{}把元素包起来,只不过字典的每一个元素都包含键和值两部分。键和值是一一对应的...

取消回复欢迎 发表评论:

请填写验证码