问题标签 [accumarray]
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.
matlab - 在稀疏矩阵中查找逐行最小值
我想在稀疏矩阵中获得每行的最小非零值。NaN
我为稠密矩阵找到的解决方案建议通过将零值设置为或来掩盖零值Inf
。但是,这显然不适用于稀疏矩阵。
理想情况下,我应该得到所有行最小值的列向量,就像我会得到的那样
除了,显然,min
由于稀疏性,使用给我留下了一个全零的列向量。有没有使用的解决方案find
?
matlab - Matlab - 根据给定索引对向量的元素组求和
我重新提出了我本周提出的一个问题,由于缺少标签,没有引起注意(基本上只有我自己查看过)。
我有两个大向量,值和索引。我需要像在这个蛮力示例中那样使用索引对值的元素求和:
一种更有效的方法如下:
更好的解决方案是:
三种解决方案是等价的
问题是:由于这确实是一个基本功能,是否有任何更快、已知的方法/功能可以做同样的事情并且我可能会忽略或我只是不知道?
matlab - 了解 Matlab 中的 accumarray
我需要了解 accumarray 才能编写我真正需要的代码。
我试图了解http://www.mathworks.co.kr/kr/help/matlab/ref/accumarray.html
大多数例子都很清楚。
但是,在示例 2 的第一个示例中,我认为
B 的 (1,2)th 元素应该是 1
因为
另外,在示例 2 的第二个示例中,我认为
B1 的 (1,2)th 元素应该是 2 而不是 -2
因为
我还以为
B1 的第 (4,1) 个元素应该是 1 而不是 -1
因为
我错过了什么?
请更正,我需要深入了解 accumarray 才能编写自己的代码。
matlab - 计算二维联合概率分布
我在一个正方形中有很多点。我想将正方形划分为许多小矩形并检查每个矩形中有多少点,即我想计算点的联合概率分布。我正在报告几种常识方法,使用循环并且效率不高:
如何在时间、内存和可能避免循环方面更有效地做到这一点?
编辑 -->我也刚刚找到了这个,这是迄今为止找到的最好的解决方案:
但它需要统计工具箱。
编辑 --> chappjc 建议的测试解决方案
matlab - 如何处理配对值?
假设我有一个自变量值向量
和响应变量向量
我想用误差线绘制u
与v
图,该方法需要适用于自变量的 100 种可能值。问题不在于绘制误差线,而在于如何创建向量对[mean(u(find(v==0.5)), mean(u(find(v==1)), mean(u(find(v==2))]
。除了 sort 之外,是否有一种标准的自动化方式来执行此操作v
,然后选择 sorted 的值并找到与这些值匹配v
的索引?这似乎非常低效。v
v
matlab - 如何转换十进制小时并每 5 分钟计算一次平均值?
我是 Matlab 的初学者,我需要解决一个问题。首先,我需要将 UT 列从十进制小时转换为小时:分钟:秒。然后,我需要平均每 5 分钟计算一次 ROT 列,并在新矩阵中显示回复(小时:分钟:秒,rot 平均值)。
数据
UT(第 1 列)矩阵
5.4
5.404
5.408
ROT (column2) 一个矩阵
0.22
0.123
0.129
例如 UT (5.404)=0.404*60=24.252;0.252*60=15.12 ,则 UT(5.404)=5:24:15 小时:分钟:秒
提前致谢
马塞洛
python - 为 numba 优化对 numpy 数组的访问
我最近偶然发现了numba,并考虑将一些自制的 C 扩展替换为更优雅的 autojitted python 代码。不幸的是,当我尝试第一个快速基准测试时,我并不高兴。似乎 numba 在这里的表现并不比普通的 python 好多少,尽管我本来期望接近 C 的性能:
这在我的机器上给出:
我正在运行 pypi 的最新 numba 版本,0.11.0。任何建议,如何修复代码,以便使用 numba 运行得相当快?
matlab - 如何累积整数序列的出现次数?
我有一个整数序列,比如说arr = [1,5,2,2,5,1]
。
我需要一个结构,比如说Counter
,它可以告诉我整数出现了多少次。
我有以下代码,但它不能工作,因为isfield
不能以这种方式使用。
那么有没有什么优雅的方法可以累积整数序列的出现次数呢?
mysql - Matlab 使用 accumarray 和单元格数组
我对 Matlab 很陌生,但我对其他编程语言有一些经验。我在 Matlab 中有一个从 MySQL 导入的非常大的表。它以单元格数组的形式给出,如下所示:
我希望输出是这样的:
所以我想在“键”列中组合具有相同数字的行。同时,我想将“销售额”和“重量”列相加并保留“名称”列(每个“键”具有相同的“名称”,但每个“名称”可以有多个“键”)
我知道这可以通过 for 循环实现,但是由于我必须以类似但不同的方式操作很多表,因此这是计算密集型的。
我读过类似的问题,这可以使用 accumarray 来解决,但是这可以用 accumarray 来完成吗?那会是什么样子?
matlab - 如何将聚合函数应用于表(或数据集)行组?
假设我有一些table
(或dataset
)对象,在其变量A
中包含一些因素X
(具有n 个不同的值或“级别”)。还假设我有一些自定义聚合函数agg
,它将一系列行作为输入,并返回一个汇总数字(又名“聚合”)作为输出。
统计数据分析中一个极其A
常见的操作示例是根据X
因子的值对行进行分组,并将其应用于agg
由组中的行组成的数组。这种操作的结果应该是一个新的table
(或dataset
,取决于 的类A
),具有n行和两个变量。这些变量中的第一个应该命名为X
,并且应该包含因子 in的n 个不同值,第二个应该有一些合适的(最好是用户指定的)名称,并且应该包含应用于行组的结果相应的级别。X
A
agg
X
正如我所说,这是在 MATLABtable
和dataset
对象等数据结构上执行的非常标准的操作,所以我期待有一种内置的方法可以做到这一点,但我没有找到它。
例如,让我们A
定义如下:
另外,让X
beTrafficLight
和agg
be
(当然,我在agg
这里使用它只是为了使示例尽可能简单。在实践agg
中会远不那么简单。)
group_aggregate
我正在考虑的典型函数通常将聚合函数、计算聚合的输出中列的名称、a table
(或dataset
)以及一个或多个要分组的变量的名称作为输入参数(以某种顺序)经过。因此,在此示例中,对此类函数的调用及其输出将如下所示
顺便说一句,为了得到上面的结果,我变出了这只绝望的小野兽:
我希望内置解决方案对例如X
变量的不同类型的值等更健壮。