Python中numpy库下的操作(2)

Python中numpy库下的操作(2)

昨天介绍了一些numpy下的一些操作,今天我来将下面的一些基础知识完善一下

#这里补充一下下载numpy包的代码
pip install numpy#在命令行下输入即可
import numpy as np#导入numpy的包

首先是花式索引,这里强调一点,花式索引和切片是有区别的
切片是在原来数组的基础上进行修改
花式索引是复制一个新的数组
这就是区别
下面我们看一下代码

arr=np.arange(32).reshape((8,4))
arr1=arr[[1,2,3,4],[0,1,2,3]]
#print(arr1)#别让数组越界
#print(arr[[1,5,7,2]][:,[0,3,1,2]])#花式索引和切片不一样,它总是将数据复制到心得数组中

arr[[1,5,7,2]][:,[0,3,1,2]]=15
#arr[1:3,0:4]=15
print(arr)

在这里插入图片描述

上述运行结果自己去验证,下面我来说一下bool类型的索引

names = np.array(['Bob','Joe','a','b','c'])

print(names=='Bob')
arr1=np.arange(5)
print(arr1[names=='Bob'])#布尔型的长度一定要对,不然会报错

在这里插入图片描述

思维发散一下,我们会延伸出其他的方法来对数组进行操作

arr1=np.arange(32)
print(arr1[arr1>15])#大于15的数组
print(arr1[(arr1<14)|(arr1>15)])#大于15或者小于14的数组
print(arr1[(arr1>15)&(arr1<30)])#大于15并且小于30的数组
arr1[(arr1>15)&(arr1<30)]=3#把大于15并且小于30的数全赋值
print(arr1)

在这里插入图片描述

具体一些常用的操作就是这些了,剩下的以后再更新

发布了4 篇原创文章 · 获赞 4 · 访问量 134

猜你喜欢

转载自blog.csdn.net/yan_5/article/details/103933415