问题标签 [numpy-slicing]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 混合整数和列表索引时的numpy重新排列
我有一个 3d 数组numpy
,我想在其中两个轴上建立索引。对于其中一个轴,我使用简单的整数索引,而在另一个轴上,我使用列表索引。如果我单独应用索引,结果与我在一对括号内应用它们时的结果不同:
您能否向我解释为什么这是预期/期望的行为?对我来说,这看起来不一致。
numpy - 使用 np.array 切片但得到 IndexError
我一直IndexError: too many indices for array
在 squares.append 的第一行,而 IndexError 上的其他帖子似乎有点太混乱了,所以如果能对我为什么得到这个有一个简单的解释,那就太好了!
非常感谢任何帮助,谢谢!
python - 为什么使用“冒号和逗号”进行切片与使用索引集合不同
为什么使用“冒号和逗号”进行切片与使用索引集合不同?
这是我期望产生相同结果的示例,但事实并非如此:
为什么它们不相等?
python - 为什么 NumPy 为 x[[slice(None), 1, 2]] 创建一个视图
在用于高级索引的 NumPy 文档中,提到了
还要认识到这
x[[1, 2, 3]]
将触发高级索引,而x[[1, 2, slice(None)]]
将触发基本切片。
一个矩阵被顺序存储到内存中。我知道进行查看是有意义的,x[[1, 2, slice(None)]]
因为元素是按顺序存储到内存中的。但是为什么 Numpy 返回x[[1, slice(None), 2]]
or的视图x[[slice(None), 1, 2]]
。例如,假设
x[[1, slice(None), 2]]
返回[11, 14, 17]
未按顺序存储在内存中的视图以及x[[slice(None), 1, 2]]
返回的视图[5, 14, 23]
。
我想知道
为什么 NumPy 在这两种情况下甚至返回一个视图
NumPy 如何处理内存寻址以创建这些视图
python - 如何从矩阵中选择行或列?
这里我有一个矩阵a=np.array([[1,2,3,4,5],[6,7,8,9,10],[11,12,13,14,15]])
我想选择所有行,但我想选择的列是从第一行到第三行。
它应该是[[1,2,3],[6,7,8],[11,12,13]]
但是,我曾经尝试过a[:,[0,2]]
,但它显示
好像不正确,于是又试了一个a[:][0:2],结果还是错误。
所以我想问一下有没有什么功能或者方法可以解决这个问题?
python - 根据 Pandas 中的列值选择行间隔
大家好,我有一个看起来像这样的数据集
它为任何目的提供索引,我想做的是将数据集切成行,生成一个像这样的新数据集
包括这样的值。有没有可能在一次切片上做到这一点?我尝试收集索引并使用 df.loc 设置切片间隔,但这种方法没有取得任何成功。数据集可以从任何类型的传输开始,但我需要在每次找到传输类型 X 之间进行切片,如果最后没有找到其他类型 X,则切片直到最后。
感谢您提前提供任何帮助
python - 如何截断一个numpy数组?
我正在尝试使用以下代码行将“数据”(大小为 112943)截断为形状(1,15000):
但是,这给了我以下错误:
有关如何解决此错误的任何建议?
python - 在 Python 中反转任意切片
我正在寻找一种关于如何在 Python 中反转切片的通用方法。我阅读了这篇综合文章,其中有几个关于切片如何工作的很好的解释: 了解 Python 的切片表示法
然而,我无法弄清楚如何计算反向切片的通用规则,该反向切片以相反的顺序处理完全相同的元素。我实际上很惊讶没有找到这样做的内置方法。
我正在寻找的是一种reversed_slice
像这样与任意值一起工作的方法start
,stop
并且step
值包括负值:
我尝试过但不起作用的是:
这适用于 step of1
以及当最后一个寻址元素与 重合时stop-1
。对于其他情况,它不会:
所以看起来我错过了一些关系,比如(stop - start) % step
. 非常感谢有关如何编写通用方法的任何帮助。
笔记:
我确实知道还有其他可能性可以让相同元素反转的序列,例如调用
reversed(a[s])
. 这不是一个选项,因为我需要反转切片本身。原因是我处理h5py
不允许step
切片中存在负值的数据集。一个简单但不是很优雅的方法是使用坐标列表,即
a[list(reversed(range(*s.indices(len(a)))))]
. 这也不是一个选项,因为h5py
要求列表中的索引必须按递增顺序给出。
python - Python:按列表切片数据框会返回比预期更长的列表
我有一个 517 个元组的列表。当我使用该列表使用 .loc 对我的数据框进行切片时,不知何故有 518 行。如果它很重要,这些是多索引的 517 个元组。结果的视觉检查似乎没有明显的标题或空行。
输出:
什么可能导致这种不匹配?