【问题标题】:Slicing NumPy array with dictionary用字典切片 NumPy 数组
【发布时间】:2017-06-03 11:40:55
【问题描述】:

是否有一个简单的选项可以使用预定义的索引字典对 NumPy 数组进行切片?

例如:

>> a = array([3, 9, 1, 5, 5])

和(虚构的)字典:

>> index_dict = {'all_except_first': (1:None), 'all_except_last': (None:-1)}

然后:

>> a[index_dict['all_except_first']]
>> array([9, 1, 5, 5])
>> a[index_dict['all_except_first']]
>> array([3, 9, 1, 5])

用名字而不是数字来切片。

【问题讨论】:

标签: python numpy dictionary slice


【解决方案1】:

创建slices:

>>> index_dict = {'all_except_first': slice(1, None), 'all_except_last': slice(None, -1)}
>>>
>>> a[index_dict['all_except_first']]
array([9, 1, 5, 5])
>>> a[index_dict['all_except_last']]
array([3, 9, 1, 5])

【讨论】:

  • 我觉得我很接近 :) 非常感谢您的解决方案!
猜你喜欢
  • 2021-04-21
  • 1970-01-01
  • 2015-07-26
  • 2018-10-09
  • 1970-01-01
  • 1970-01-01
  • 2020-12-11
  • 2011-08-30
  • 1970-01-01
相关资源
最近更新 更多