- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
在 python 中,我希望从 1-dim 数组中逐行减去 2-dim 数组。
我知道如何使用“for”循环和索引来完成它,但我想使用 numpy 函数可能会更快。但是我没有找到办法。这是一个带有“for”循环的示例:
from numpy import *
x=array([[1,2,3,4,5],[6,7,8,9,10]])
y=array([20,10])
j=array([0, 1])
a=zeros([2,5])
for i in j :
... a[i]=y[i]-x[i]
这里是一个不起作用的例子,用这个代替'for'循环:
a=y[j]-x[j,i]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: shape mismatch: objects cannot be broadcast to a single shape
你有什么建议吗?
最佳答案
问题在于 y-x
具有各自的形状 (2) (2,5)
。要进行适当的广播,您需要形状 (2,1) (2,5)
。只要保留元素的数量,我们就可以使用 .reshape
来做到这一点:
y.reshape(2,1) - x
给予:
array([[19, 18, 17, 16, 15],
[ 4, 3, 2, 1, 0]])
关于Python 和 numpy : subtracting line by line a 2-dim array from a 1-dim array,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10178823/
我正在用java创建一个分数类。该程序采用整个分数表达式,并根据带有 switch 语句的运算符执行操作。我一切正常,除了当程序给出一个减法表达式(即 -1/2--1/2)时。当我测试这个表达式时,我
我目前正在开发一个使用 JavaFX 播放视频的应用程序。我想将音量 slider 放置在边框 Pane 的右侧。目前,应用程序将调整大小以适应窗口的大小,该窗口将与我的音量 slider 重叠。 我
import cv2 image1 = cv2.imread('one.jpg', 0) image2 = cv2.imread('two.jpg', 0) diff = image1 - ima
假设我有以下两个字符串: var value = "1-000-111"; var mask = " - -"; 我想从值中减去掩码。换句话说,我想要这样的东西: var output = sub
全部, 我有以下长格式数据框: df = pd.DataFrame({'date': ["2020-01-01","2020-01-01","2020-01-02","2020-01-02","202
我是 scala 新手,正在尝试编写函数,该函数返回给定字符串中每个字母的所有索引的映射。我的代码: def group(string: String) = { val map = mutable
如何减去数组中每一行的向量? a <- array(1:8, dim=c(2,2,2)) a , , 1 [,1] [,2] [1,] 1 3 [2,] 2 4 ,
一个群扩展了幺半群的想法以允许逆。这允许: gremove :: (Group a) => a -> a -> a gremove x y = x `mappend` (invert y) 但是像自然
我有一个主表A,约有 900 万行。另一个表 B(相同结构)包含表 A 中的约 28K 行。从表 A 中删除 B 的所有内容的最佳方法是什么? 所有列(~10)的组合都是唯一的。没有更多的形式是唯一
我想为可减类型创建一个类型类,这样 值类型实现 Ord。 有一个减函数。 它支持 UTCTime、Double 和 Int(或可选的任何 Num 类型) 有一个 Delta 类型,它可能与源值类型不同
我有几个对象列表 List listA和List listB 。我需要减去listA和listB并获取listA和listB中不匹配的对象列表。如果两个列表具有相同的对象,我不应该得到任何值。我尝试使
首先,我对问题标题不明确表示歉意:原因是我无法识别工作中的数学过程。 简而言之,情况如下: 我有两个长度不同的向量:f1 和 f2。 我想按元素计算 f1 和 f2 之间的最小平方距离。 这是我的操作
我有两个元组列表,每个元组都由开始时间和结束时间(从纪元开始的秒数)组成,如下所示: list1= [(2,4), (7,10), (14,22)] list2 = [(1,3), (5,8), (9
void signalclear(int noise[], int star[], int clear[]) { int i = 0; int j = 0; while (clear[i] !
是否可以减一Region对象并将其从另一个对象中减去? 例如我有两个区域,region1(绿色)和 region2(红色): 我如何创建一个 region3,它只是 region1 的一部分而不是 r
我正在尝试使用 ListUtils.subtract(1,2) 从另一个列表中减去一个列表的值,但是我注意到减法从未发生,所以我一直在返回 1 中的所有元素。我认为这可能表明存在平等问题,但我的哈希码
我想对dataframe进行条件减法(如第一张图所示)。 基本上,这就是我想要做的: 减去我和你之间的食物和衣服的 col1 和 col2 的值,并为差异创建新的行。 因为第一行有'food'和'me
我使用 OpenCV 进行前景检测,但我想知道是否有人可以提供帮助。问题出在这两个参数上: 学习率在:bst.apply(currentFame, foregroungMask, learnRate)
我有一个脚本可以收集数据。我遇到了 TypeError: Timestamp subtraction must have the same timezones or no timezones 错误。我
我发布了 another question如果您需要一些上下文,请早点。看来我在这种方法上走错了路。 Addition chains可用于最小化对数字求幂所需的乘法次数。例如,a7 需要四次乘法。两个
我是一名优秀的程序员,十分优秀!