我想选择数组的某些元素,然后根据这些值执行加权平均计算。但是,使用过滤条件会破坏数组的原始结构。arr
形状(2, 2, 3, 2)
已变成一维数组。这对我来说毫无用处,因为并非所有这些元素以后都需要组合在一起(而是它们的子数组)。如何避免这种变平?
>>> arr = np.asarray([ [[[1, 11], [2, 22], [3, 33]], [[4, 44], [5, 55], [6, 66]]], [ [[7, 77], [8, 88], [9, 99]], [[0, 32], [1, 33], [2, 34] ]] ])
>>> arr
array([[[[ 1, 11],
[ 2, 22],
[ 3, 33]],
[[ 4, 44],
[ 5, 55],
[ 6, 66]]],
[[[ 7, 77],
[ 8, 88],
[ 9, 99]],
[[ 0, 32],
[ 1, 33],
[ 2, 34]]]])
>>> arr.shape
(2, 2, 3, 2)
>>> arr[arr>3]
array([11, 22, 33, 4, 44, 5, 55, 6, 66, 7, 77, 8, 88, 9, 99, 32, 33,
34])
>>> arr[arr>3].shape
(18,)
查看 numpy.where
http://docs.scipy.org/doc/numpy/reference/generated/numpy.where.html
为了保持相同的尺寸,您将需要一个填充值。在下面的示例中,我使用0,但您也可以使用np.nan
np.where(arr>3, arr, 0)
退货
array([[[[ 0, 11],
[ 0, 22],
[ 0, 33]],
[[ 4, 44],
[ 5, 55],
[ 6, 66]]],
[[[ 7, 77],
[ 8, 88],
[ 9, 99]],
[[ 0, 32],
[ 0, 33],
[ 0, 34]]]])
问题内容: 我目前正在尝试学习Numpy和Python。给定以下数组: 是否有一个函数返回尺寸(ega是一个2 x 2数组)的函数? 返回4并没有太大帮助。 问题答案: 是: ndarray。 数组尺寸的 形状 元组。 从而:
问题内容: 有没有办法更好地做到上述几点?我希望它能够创建任意数量的维数组,也… 问题答案: 我只会使用平面一维数组和基于维度i和j的索引。
主要内容:jQuery 尺寸方法,jQuery 尺寸,jQuery width() 和 height() 方法,实例,jQuery innerWidth() 和 innerHeight() 方法,实例,jQuery outerWidth() 和 outerHeight() 方法,实例通过 jQuery,很容易处理元素和浏览器窗口的尺寸。 jQuery 尺寸方法 jQuery 提供多个处理尺寸的重要方法: width() height() innerWidth() innerHeight() ou
在CSS中,通过 width 和 height 属性来定义一个盒子的宽度和高度,可以用长度值或百分比来设置,不允许负值。使用百分比时,根据父元素的宽度进行计算盒子的宽度,根据父元素的高度进行计算盒子的高度。 如果一个盒子没有显式定义 width 属性,则宽度的计算结果跟定位类型相关:静态定位或相对定位的盒子,其宽度为父元素宽度的100%;绝对定位和浮动的盒子,其宽度根据所包含内容自动扩展,最大宽度
CSS 尺寸 (Dimension) 属性允许你控制元素的高度和宽度。同样,它允许你增加行间距。 更多实例 设置元素的高度 这个例子演示了如何设置不同元素的高度。 使用百分比设置图像的高度 这个例子演示了如何使用百分比值设置元素的高度。 使用像素值来设置元素的宽度 本例演示如何使用像素值来设置元素的宽度。 设置元素的最大高度 此示例演示如何设置元素的最大高度。 使用百分比来设置元素的最大宽度 本例
问题内容: 我对(N,)维数组和(N,1)维数组之间的转换有疑问。例如,y是(2,)维。 但是下面将显示y2为(2,1)维。 在不复制的情况下将y2转换回y的最有效方法是什么? 谢谢汤姆 问题答案: 为此工作 还请注意,除非需要复制新形状(在这里不需要这样做),否则它不会复制数据: