Tag: vector

在R中拆分一个string向量

我有以下vector: tmp3 <- c("1500 2", "1500 1", "1510 2", "1510 1", "1520 2", "1520 1", "1530 2", "1530 1", "1540 2", "1540 1") 我想只保留在这个vector的每个primefaces中的第二个数字,所以它会读取: c(2,1,2,1,2,1,2,1,2,1)

使用无盒装载体自动分化

是否有一个Haskell库自动区分与无盒子的vector? Numeric.AD的grad函数需要一个Traversable的实例,而Data.Vector.Unboxed则不是。

为什么我的vector绘图按比例缩放?

我试图在我的Android应用程序中使用vector绘制。 来自http://developer.android.com/training/material/drawables.html (强调我的): 在Android 5.0(API Level 21)及以上版本中,您可以定义vector绘图, 这些绘图可以缩放而不会丢失定义。 使用这个drawable: <vector xmlns:android="http://schemas.android.com/apk/res/android" android:height="24dp" android:width="24dp" android:viewportWidth="24" android:viewportHeight="24"> <path android:fillColor="@color/colorPrimary" android:pathData="M14,20A2,2 0 0,1 12,22A2,2 0 0,1 10,20H14M12,2A1,1 0 0,1 13,3V4.08C15.84,4.56 18,7.03 18,10V16L21,19H3L6,16V10C6,7.03 8.16,4.56 11,4.08V3A1,1 0 0,1 12,2Z" /> 和这个ImageView: <ImageView android:layout_width="400dp" android:layout_height="400dp" android:src="@drawable/icon_bell"/> 当试图以400dp显示图标(在一个大型的2015年大型移动设备上运行棒棒糖)时产生这个模糊的图像: 将vector绘制的定义中的宽度和高度更改为200dp可显着改善400dp渲染大小的情况。 但是,将其设置为TextView元素(即文本左侧的图标)的可绘制对象现在会创build一个巨大的图标。 我的问题: 1)为什么在vector绘制中有一个宽度/高度的规格? 我认为这些的全部意义在于它们是无损地扩大和缩小,使其宽度和高度在其定义中毫无意义? 2)是否可以使用一个单独的vector绘图工具作为一个24DP可绘制的TextView,但扩大以及使用更大的图像呢? 例如,我如何避免创build不同大小的多个vector绘图,而是使用一个缩放到我的渲染要求? 3)如何有效地使用宽度/高度属性和viewportWidth / Height有什么不同? 额外细节: 设备正在运行API 22 使用Android […]

在MATLAB中索引向量效率低下吗?

背景 我的问题是由简单的观察所激发的,这些观察有点破坏了经验丰富的MATLAB用户常常持有/做出的信仰/假设: MATLAB在内置函数和基本语言function(如索引向量和matrix)方面进行了很好的优化。 MATLAB中的循环很慢(尽pipe是JIT),如果algorithm可以用本地“vector化”方式表示,通常应该避免。 底线:核心的MATLABfunction是高效的,试图超越它使用MATLAB代码是困难的,即使不是不可能的。 调查向量索引的性能 下面显示的示例代码与基本相同:我为所有向量条目分配一个标量值。 首先,我分配一个空的向量x : tic; x = zeros(1e8,1); toc Elapsed time is 0.260525 seconds. 有了x我想将其所有条目设置为相同的值。 在实践中,你会以不同的方式做,例如, x = value*ones(1e8,1) ,但这里的要点是调查向量索引的性能。 最简单的方法是写: tic; x(:) = 1; toc Elapsed time is 0.094316 seconds. 我们把它称为方法1(从分配给x的值)。 这似乎是非常快(至less比内存分配更快)。 因为我在这里做的唯一的事情就是在内存上运行,所以我可以通过计算获得的有效内存带宽并将其与计算机的硬件内存带宽进行比较来估计此代码的效率: eff_bandwidth = numel(x) * 8 bytes per double * 2 / time 在上面,我乘以2因为除非使用SSEstream,存储器中的设置值要求向量既被读取也被写入存储器。 在上面的例子中: eff_bandwidth(1) = […]

在Clojure中添加一个向量的惯用方法是什么?

预先列表很容易: user=> (conj '(:bar :baz) :foo) (:foo :bar :baz) 追加向量很容易: user=> (conj [:bar :baz] :foo) [:bar :baz :foo] 我如何(习惯性地)在向量上添加一个向量? 这不起作用,因为它返回一个seq,而不是一个vector: user=> (cons :foo [:bar :baz]) (:foo :bar :baz) 这是丑陋的(IMVHO): user=> (apply vector (cons :foo [:bar :baz])) [:foo :bar :baz] 注:我基本上只是想要一个数据结构,我可以追加和prepend。 追加到大列表应该有一个很大的性能损失,所以我想vector..

如何初始化一个结构向量的向量?

如果我有一个NxNmatrix vector< vector<int> > A; 我应该如何初始化它? 我试过没有成功: A = new vector(dimension); 既不是: A = new vector(dimension,vector<int>(dimension));

容量是否被复制到vector中?

采取以下代码: std::vector<int> a; a.reserve(65536); std::vector<int> b(a); //NOTE: b is constructed from a a.reserve(65536); // no reallocation b.reserve(65536); 容量是否被复制? 最后一行是否会重新分配? 这个标准是否对此有任何说明还是保持沉默?

如何获得向量中的最大(或最小)值?

我怎样才能得到最大(或最小)的值在一个向量在C + + ? 我在Google上看到了一些这样的解决scheme,但没有一个对我有意义:( 有人可以用简单的noob方式解释如何从vector中获得最大值或最小值吗? 我是否错误地认为它会和数组差不多呢? 我需要一个迭代器吗? 我尝试了max_element但不断收到错误? vector<int>::const_iterator it; it = max_element(cloud.begin(), cloud.end()); 错误:请求“云”中的成员“开始”,这是非类types“int [10]” 编辑:我无法回答我自己? 所以我把它放在这里 哇,谢谢你的回复! 我结束了这样做,认为它好吗? for (unsigned int i = 0; i < cdf.size(); i++) if (cdf[i] < cdfMin) cdfMin = cdf[i]; 其中cdf是一个向量。

计算2Dvector的交叉产品

从维基百科: 叉积是在三维欧几里得空间中的两个向量上的二元运算,其导致与包含两个input向量的平面垂直的另一向量。 鉴于定义只定义在三个( 或七个,一个和零 )维度,如何计算两个二维向量的叉积? 我见过两个实现。 一个返回一个新的向量(但只接受一个向量),另一个返回一个标量(但是是两个向量之间的计算)。 实现1(返回一个标量): float CrossProduct(const Vector2D & v1, const Vector2D & v2) const { return (v1.X*v2.Y) – (v1.Y*v2.X); } 实现2(返回一个向量): Vector2D CrossProduct(const Vector2D & v) const { return Vector2D(vY, -vX); } 为什么不同的实现? 我将使用什么标量实现? 我会用什么vector实现? 我问的原因是我自己写了一个Vector2D类,不知道要使用哪种方法。

如何使用迭代器浏览vector? (C ++)

目标是访问stringvector的“nth”元素,而不是[]运算符或“at”方法。 据我所知,迭代器可以用来浏览容器,但我从来没有使用过迭代器,而我正在阅读的内容令人困惑。 如果有人可以给我一些关于如何实现这一目标的信息,我将不胜感激。 谢谢。