python正向索引 反向索引_如何索引numpyarraypython的倒数第二行

本文讨论了如何在不断追加新行的numpy数组中访问倒数第二行,特别是关注wm和hm列的元素。通过举例说明了各种索引方法,如arr[-2]和arr[-2,0],并遇到的问题是某些方法返回最后一行而非倒数第二行。作者寻求一种能正确访问倒数第二行wm元素的方法,以便计算差异。" 92207217,8256729,使用Blender导出3D打印STL文件,"['Blender', '3D打印', 'STL导出', 'Python']
摘要由CSDN通过智能技术生成

第二个数组的第二个数组要

我有一个不断追加新行的循环:arr2= is an array formatted like so [[300 240 22 22]]

所以在上面的例子中x=300 y=240 w=22 h=22

这些数字在等式中被处理,直到wm有2个数字,所以[200,300]和hm也有2个数字[200,300],并且都不停地被附加到arr的末尾(不是创建新的数组,而是添加到单个数组中)。所以它看起来像这样不断地添加新行(我不知道它实际上是在添加新行还是覆盖旧值):

^{pr2}$

代码:arr=[] #shape is (0,)

for (x, y, w, h) in arr2:

wm=int(x + (w/2))

hm=int(y + (h/2))

arr.append([wm, hm])

simplified version:

arr=[]

for (x, w) in arr2:

wm=int(x + (w/2))

arr.append([wm])

非简化代码生成一个具有形状(2,2)和数据类型:float32。在column (wm) column(hm)

| |

| |

[[293.51373 323.4329 ] # second to last row

[247.77493 316.02783]]

[[292.9887 322.23425]

[247.24142 314.2921 ]]

以下是我尝试过的索引方法的一些示例(与数组一起)(这是数组最后附加的两行):arr [[255.44836 280.92575] # I want to index this line-second to last appended row

[298.6107 285.75986]]

arr[-1] [298.6107 285.75986]

arr[-2] [255.44836 280.92575]

arr[-2][0] 255.44836

arr[:,0] [255.44836 298.6107 ]

arr[-1,:] [298.6107 285.75986]

arr[-2,0] 255.44836

arr[-2::2] [255.44836 280.92575]

arr [[255.35194 281.08353] # along with this line-last appended row

[298.45673 285.88693]]

arr[-1] [298.45673 285.88693]

arr[-2] [255.35194 281.08353]

arr[-2][0] 255.35194

arr[:,0] [255.35194 298.45673]

arr[-1,:] [298.45673 285.88693]

arr[-2,0] 255.35194

arr[-2::2] [255.35194 281.08353]

其他时候,当我试图索引倒数第二行时,它会显示一个轴错误,这可能是问题所在(追加操作不会添加新行,这正是我要索引的内容,而是覆盖旧值)。我不知道。所以我尝试用concatenate,vstack,pandas来切换附加方法。但没用。

我要做的就是找出wm元素的第二列(在示例280.92575-281.08353)中最后一个和倒数第二个附加行之间的差异,以及wm element的第一列(255.44836-255.35194)的差异。所有不同的索引方法都没有取倒数第二行,只提取最后一行。请告诉我是否有不同的方法以不同的方式索引倒数第二行,或者是否有其他索引方法我还没有尝试过。抱歉,如果这是令人困惑的仍然得到窍门。我可以试着消除任何困惑。提前谢谢!在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值