问题标签 [vectorization]

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.

0 投票
0 回答
276 浏览

sorting - 使用相同的顺序对两个矩阵的行进行排序

可能重复:
用另一个矩阵对一个矩阵进行排序

给定两个大小相同的矩阵 A 和 B,我想在第二维(行)上对 A 进行排序,并对矩阵 B 应用相同的排序。是否可以对当前代码进行矢量化?

0 投票
1 回答
414 浏览

c - 手动矢量化 C 代码的最佳方法

我想手动对一些 C 代码进行矢量化,以加快速度。为此目的(单元处理器或 CBE 上的 SPE)我想使用 SIMD 数学。该代码最初使用了一些物理矢量计算(速度,加速度等),因此在代码的某些部分有很多操作,例如;

所以此时我考虑将 v's 和 r's 转换为向量(在 SPE 上,一个向量可以包含 4 个单个浮点值),所以在伪代码中它应该类似于

那么您认为这种方法值得还是您可以考虑更好的方法?

谢谢

0 投票
3 回答
877 浏览

arrays - 使用 isreal 的结果不一致

举个简单的例子:

为了对代码进行矢量化,我尝试了:

但结果不一样:

我究竟做错了什么?

0 投票
4 回答
1092 浏览

r - 如何用优化的函数替换 R 中的 for 循环(lapply?)

我有一个数据框,每行都有时间事件。在一行中,我有发送者的事件类型(typeid = 1),而在另一行中,我有接收者的事件类型(typeid = 2)。我想计算发送者和接收者之间的延迟(时间差)。

我的数据组织在一个 data.frame 中,如下图所示:

为了计算延迟,我使用 calc_DelayVideo 函数,但对于具有大量记录(~60000)的数据帧,它需要很多时间。

如何用更优化的 R 函数替换 for 循环?我可以使用 lapply 来做这样的计算吗?如果是这样,你能给我举个例子吗?

提前致谢,

0 投票
3 回答
82 浏览

matlab - 在 MATLAB 中,是否有一种矢量化的方法可以对每列不同数量的值进行操作?

在 MATLAB 中,有没有比使用 for 循环更简洁的方法来按列处理离散条件索引?这是我的代码:

我的目标是取每列的一组值的前 x% 的平均值。上面的代码有效,但我只是想知道是否有更简洁的方法来做到这一点?

0 投票
1 回答
4059 浏览

matlab - 如何在 MATLAB 中对随机游走仿真进行矢量化

我正在用 MATLAB 重写蒙特卡洛仿真模型,重点是可读性。该模型涉及许多粒子,表示为 (x,y,z),在具有一定终止概率的一小组状态上随机游走。与输出相关的信息是终止于给定状态的粒子数。

模拟需要足够多的粒子,因此为每个粒子单独运行它的成本太高了。向量化似乎是从 MATLAB 中获得性能的方法,但是有没有什么惯用的方法可以在 MATLAB 中创建这个仿真的向量化版本?

我正在努力实现这一点——我什至尝试创建一个 (nStates x nParticles) 矩阵来表示每个粒子状态组合,但是这种方法在可读性方面很快就失控了,因为粒子从状态反弹彼此独立地陈述。我应该硬着头皮改用更适合这个的语言吗?

0 投票
5 回答
2706 浏览

matlab - 向量化连续幂矩阵的创建

x=1:100N=1:10。我想创建一个矩阵x^N,以便i第 th列包含条目[1 i i^2 ... i^N]

我可以使用 for 循环轻松做到这一点。但是有没有办法使用矢量化代码来做到这一点?

0 投票
2 回答
10691 浏览

arrays - 在一行中多次递增 MATLAB 数组的一个值

这是一个关于在同一语句中多次递增 MATLAB 数组的一个值而不必使用 for 循环的问题。

我将我的数组设置为:

然后运行:

显然 20 被忽略了。但是,我希望将其包括在内,以便:

会给:

是否有一个功能可以让这以一种很好的矢量化方式完成?

(实际上,对数组的索引将包括多个索引,所以它可能是[1 1 2 2 1 1 1 1 3 3 3]等等,一个数字数组以([20, 3]上述)相同的长度递增。)

0 投票
1 回答
2069 浏览

matlab - 在矩阵中查找值并将它们放入向量中

它一定很简单,但令人惊讶的是,我在这里或通过反复试验找不到这个问题的答案。
我想从矩阵中获取值(根据某些条件)并将值放入向量中。我还需要匹配值的下标索引。有很多数据,所以 for 循环出来了。

这是一个正确(但迭代)的答案:

我试过values = A(I,J)了,但这是 n-by-n 而不是 n-by-1。

0 投票
7 回答
74208 浏览

matlab - 如何为对角线上的 MATLAB 矩阵赋值?

假设我有一个 NxN 矩阵 A、一个由数字 1:N 的子集组成的索引向量 V 和一个值 K,我想这样做:

有没有办法在一个带有矢量化的语句中做到这一点?

例如 A(某物)= K

该语句A(V,V) = K不起作用,它分配了非对角元素,这不是我想要的。例如: