numpy学习汇总4-花式索引tcy
发布日期:2021-06-29 14:46:32
浏览次数:2
分类:技术文章
本文共 1713 字,大约阅读时间需要 5 分钟。
1.7.花式索引 2018/11/11==================================================================1.说明# 1)NumPy数组可用切片进行索引# 2)可用布尔或整数数组(掩码)进行索引.这种方法称为花式索引.# .3)花式索引跟切片不一样,它创建副本而不是视图。用法:a[ [bool or int]]==================================================================# 1.1.使用布尔掩码np.random.seed(3)np.random.randint(0, 10, 8) # array([8, 9, 3, 8, 8, 0, 5, 3])mask = (a % 2 == 0) # array([True, False, False,True,True,True,False,False])b= a[mask] # 等价a[a%2==0]b # array([8, 8, 8, 0])#1.2.为子数组分配新值:a[a % 2 == 0] = -1a # array([-1, 9, 3, -1, -1, -1, 5, 3])===================================================================# 2.1.使用整数数组进行索引a = np.arange(0, 100, 10)a # array([ 0, 10, 20, 30, 40, 50, 60, 70, 80, 90])a[[2, 3, 2, 4, 2]] # note: [2, 3, 2, 4, 2] is a Python list# array([20, 30, 20, 40, 20])# 用整数数组进行索引来创建新数组,新数组形状与整数数组形状相同:----------------------------------------------a = np.arange(10)idx = np.array([[3, 4], [9, 7]])idx.shape # (2, 2)a[idx] #array([[3, 4],[9, 7]])----------------------------------------------# 一次传入多个索引数组:arr= np.arange(32).reshape((8, 4))arr #array( [[ 0, 1, 2, 3], [ 4, 5, 6, 7],[ 8, 9, 10, 11], [12, 13, 14, 15],[16, 17, 18, 19],[20, 21, 22, 23], [24, 25, 26, 27],[28, 29, 30, 31]])arr[[1, 5, 7, 2], [0, 3, 1, 2]]#array([ 4, 23, 29, 10])终选元素(1,0),(5,3),(7,1),(2,2)-----------------------------------------------# ix_函数将两个一维数组转换为一个用于选取方形区域的索引器:arr[np.ix_([1, 5, 7, 2], [0, 3, 1, 2])]arr[[1, 5, 7, 2]][:,[0, 3, 1, 2]] # 等价于上面# array( [[ 4, 7, 5, 6],[20, 23, 21, 22],[28, 31, 29, 30],[ 8, 11, 9, 10]])------------------------------------------------# 2.2.可以使用此类索引分配新值:a[[9, 7]] = -100a # array([0,10,20,30,40,50,60,-100,80,-100])=====================================================================
转载地址:https://chunyou.blog.csdn.net/article/details/83934729 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年04月09日 00时14分56秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
开发必备:HTTP 及 TLS
2019-04-29
Windows 11答疑:大家最关心的10个问题
2019-04-29
select、poll、epoll之间的区别
2019-04-29
Shopify!Shopify!Shopify!
2019-04-29
这是美国MarTech最大的一家独立公司:HubSpot
2019-04-29
从开发到产出:关于机器学习的七则干货建议
2019-04-29
你想成为数据科学家吗?不要把机器学习当成入门第一课
2019-04-29
你想成为数据科学家吗?不要把机器学习当成入门第一课
2019-04-29
现代社会悖论:信息泛滥是一只不守规矩的野兽
2019-04-29
如何设计自己的第一个加密交易机器人?
2019-04-29
浪费在Excel上的时间:如何开始专家式机器学习实验追踪?
2019-04-29
失业三星期:我寻找第二份编程工作之路
2019-04-29
跳过媒介,我们能不能只用思想控制计算机?
2019-04-29
服务器宕机:谷歌最近经历了“黑客攻击”吗?
2019-04-29
RepVGG:极简架构,SOTA性能,让VGG式模型再次伟大
2019-04-29
提升查询技能,这7条SQL查询错误必须解决
2019-04-29
TKDE 2020 | 综述:基于知识图谱的推荐系统
2019-04-29
休息时间!哪些业余活动能提升开发人员的技能?
2019-04-29
把人脑“森林”上传到计算机:人类脑计划只是一个科幻野心?
2019-04-29
智力测试:如何超越动物之智?
2019-04-29