Tag: matrix

SparseArray vs HashMap

我可以想到为什么HashMap与整数键比SparseArray更好的几个原因: SparseArray的Android文档说:“它通常比传统的HashMap慢”。 如果您使用HashMap而不是SparseArray编写代码,则您的代码将与其他Map实现一起使用,您将能够使用为Mapsdevise的所有Java API。 如果你使用HashMap而不是SparseArray编写代码,你的代码将在非android项目中工作。 映射覆盖equals()和hashCode()而SparseArray则不。 然而,每当我尝试在Android项目中使用带有整数键的HashMap时,IntelliJ告诉我应该使用SparseArray 。 我觉得这很难理解。 有谁知道使用SparseArray的任何令人信服的理由?

在R中,select符合条件的matrix的行

在R中用matrix: one two three four [1,] 1 6 11 16 [2,] 2 7 12 17 [3,] 3 8 11 18 [4,] 4 9 11 19 [5,] 5 10 15 20 我想提取行的列为3 = 11的子matrix。即: one two three four [1,] 1 6 11 16 [3,] 3 8 11 18 [4,] 4 9 11 19 我想这样做没有循环。 我是R新手,所以这可能是非常明显的,但文档往往是简单的。

使用R查找包含最大值的行索引

给定以下matrix让我们假设我想在第二列中find最大值: mat <- matrix(c(1:3,7:9,4:6), byrow = T, nc = 3) mat [,1] [,2] [,3] [1,] 1 2 3 [2,] 7 8 9 [3,] 4 5 6 我知道max(mat[,2])将返回8.如何返回行索引,在这种情况下,第二行?

我应该使用data.frame还是matrix?

什么时候应该使用data.frame ,什么时候使用matrix更好? 两者都保持矩形格式的数据,所以有时不清楚。 什么时候使用哪种数据types有什么一般的经验法则?

为什么2048×2048与2047x2047arrays乘法相比,会有巨大的性能下降?

我正在做一些matrix乘法基准testing,正如之前为什么MATLAB在matrix乘法中如此之快? 现在我又遇到了另外一个问题,当乘以两个2048x2048matrix时,C#和其他的有很大的区别。 当我尝试只乘以2047x2047matrix时,这似乎是正常的。 还增加了一些其他的比较。 1024×1024 – 10秒。 1027×1027 – 10秒。 2047×2047 – 90秒。 2048×2048 – 300秒。 2049×2049 – 91秒。 (更新) 2500×2500 – 166秒 对于2k到2k的情况,这是三分半钟的差距。 使用2dim数组 //Array init like this int rozmer = 2048; float[,] matice = new float[rozmer, rozmer]; //Main multiply code for(int j = 0; j < rozmer; j++) { for (int k = […]

炸弹algorithm

我有一个由非负整数组成的nxmmatrix。 例如: 2 3 4 7 1 1 5 2 6 2 4 3 4 2 1 2 1 2 4 1 3 1 3 4 1 2 1 4 3 2 6 9 1 6 4 “放下炸弹”将目标单元和所有八个邻居的数量减less一个,最less为零。 xxxx X x xxx 什么是algorithm,将确定所需的最小数量的炸弹减less所有单元格为零? B选项(由于我不是一个仔细的读者) 其实问题的第一个版本不是我正在寻找的答案。 我没有仔细阅读整个任务,还有额外的限制,让我们说: 那简单的问题呢,在sorting时必须不增加: 8 7 6 6 5是可能的input顺序 7 8 5 […]

转置/解压缩函数(zip的反转)?

我有一个2项目元组的列表,我想将它们转换为2个列表,其中第一个包含每个元组中的第一个项目,第二个列表包含第二个项目。 例如: original = [('a', 1), ('b', 2), ('c', 3), ('d', 4)] # and I want to become… result = (['a', 'b', 'c', 'd'], [1, 2, 3, 4]) 是否有一个内置的function呢?

R – 像素matrix的图像?

你如何从R中的matrix形成图像? matrix值将对应于图像上的像素亮度(虽然我现在只对0,1的值感兴趣,但白色或黑色),列和行号对应图像上的垂直和水平位置。 通过制作一个图像我的意思是显示在屏幕上,并保存为JPG格式。

下标越界 – 一般定义和解决scheme?

在与RI合作时,经常会收到错误信息“下标越界”。 例如 : # Load necessary libraries and data library(igraph) library(NetData) data(kracknets, package = "NetData") # Reduce dataset to nonzero edges krack_full_nonzero_edges <- subset(krack_full_data_frame, (advice_tie > 0 | friendship_tie > 0 | reports_to_tie > 0)) # convert to graph data farme krack_full <- graph.data.frame(krack_full_nonzero_edges) # Set vertex attributes for (i in V(krack_full)) { for (j […]

什么是最广泛使用的C ++vector/matrixmath/线性代数库,以及它们的成本和收益折衷?

似乎很多项目慢慢需要做matrix运算,陷入了先构build一些向量类并慢慢增加function的陷阱,直到被抓住build立一个半自定义的线性代数库,并依赖于它。 我想避免这种情况,而不是build立在一些切线相关的库(例如OpenCV,OpenSceneGraph)上。 那里常用的matrixmath/线性代数库是什么,为什么会决定使用另一个呢? 有什么会因为某种原因被build议不要使用? 我特别在几何/时间上下文*(2,3,4 Dim)*中使用它,但将来可能会使用更高维的数据。 我正在寻找关于API,速度,内存使用,宽度/完整性,狭窄/特定性,可扩展性和/或成熟度/稳定性的差异。 更新 我结束了使用Eigen3,我非常满意。