标签: elementwise-operations

matlab中的元素ifs - 它们是否存在?

假设我有以下基本if语句:

if (A ~= 0)
   % do something like divide your favorite number by A
else
   % do something like return NaN or infinity
end
Run Code Online (Sandbox Code Playgroud)

问题是A不是简单的数字而是矢量.如果A中没有元素为0,则Matlab返回true.我要找的是向量化的吗?对A中每个元素执行上述if语句的方法

实际上,我只想尽快做到这一点.

matlab if-statement elementwise-operations

3
推荐指数
1
解决办法
4007
查看次数

从python数组创建元素智能字典

从这些数组:

t = ["A","B","C"]
a = [1,2,3]
b = [4,5,6]
c = [7,8,9]
Run Code Online (Sandbox Code Playgroud)

我怎样才能获得这样的列表

[
  { 'A':1, 'B':4, 'C':7},
  { 'A':2, 'B':5, 'C':8},
  { 'A':3, 'B':6, 'C':9},
]
Run Code Online (Sandbox Code Playgroud)

这样在JSON中转储更有用吗?

python arrays dictionary elementwise-operations

3
推荐指数
1
解决办法
52
查看次数

以元素方式计算向量的幂

[x, y, ...]在Octave中有一个向量,我想采用元素的pth幂来获得新的向量[x^p, y^p, ...].任何人都知道如何做到这一点?

arrays matlab octave exponentiation elementwise-operations

2
推荐指数
1
解决办法
49
查看次数

将OpenCV Mat与标量元素进行比较

我有cv::Mat A,有CV_32F.但它保存整数值,如1,2 .... 100.我想形成一个大小相同的面具A.

但是如果A(x,y)不等于5(假设),则掩码必须包含零.如果A(x,y)等于5(假设),则掩码必须包含1.

我想稍后将其用作ROI.

c++ opencv roi mask elementwise-operations

2
推荐指数
1
解决办法
1893
查看次数

MATLAB 中的稀疏矩阵乘法与 spfun

我有一个密列矩阵y的大小(m,1)和稀疏矩阵x大小(m,n)
我想使用y和 的每一列进行元素乘法x
生成的稀疏矩阵的大小仍然为(m,n)
Sparse matrixx加载到内存时大约为 10GB。
可以spfun帮助我以高效记忆的方式实现我的目标吗?

我很难理解它背后的逻辑。

谢谢你。

matlab sparse-matrix elementwise-operations

2
推荐指数
1
解决办法
333
查看次数

Julia - 数组中值的乘法

如果我有一个带有随机值的数组A,我想为每个长度为A的i定义一个数组B. B[i] = (A[i])²

首先,我尝试了以下代码:

using Distributions

A = rand(Uniform(1,10),1,20)

B = A

for i in 1:20
       B[i] = (A[i])^2
end
Run Code Online (Sandbox Code Playgroud)

在这些操作之后,我有A = B.

A
1×20 Array{Float64,2}:
 26.0478  5.36654  99.675  23.18  …  1.54846  91.3444  9.41496  2.91666

B
1×20 Array{Float64,2}:
 26.0478  5.36654  99.675  23.18  …  1.54846  91.3444  9.41496  2.91666
Run Code Online (Sandbox Code Playgroud)

所以我尝试了另一种方法:

B = A^2
Run Code Online (Sandbox Code Playgroud)

有以下错误:

ERROR: DimensionMismatch("A has dimensions (1,20) but B has dimensions (1,20)")
Run Code Online (Sandbox Code Playgroud)

例如,如果我这样做,B = 2*A它可以正常工作......

一些想法有所帮助?

谢谢

arrays broadcasting julia elementwise-operations

2
推荐指数
1
解决办法
534
查看次数

Numpy逐元素乘法(意外的整数溢出)

我正在使用 Python 3.7 和 numpy 1.15.2,并且在元素乘法中遇到了我不理解的行为。以下对我来说很直观:

import numpy as np
a = np.array([[30000,4000]])
b = np.array([[70000,8000]])
np.multiply(a,b)
Run Code Online (Sandbox Code Playgroud)

array([[2100000000,32000000]])
Run Code Online (Sandbox Code Playgroud)

但是,当我这样做时

a = np.array([[30000,40000]])
b = np.array([[70000,80000]])
np.multiply(a,b)
Run Code Online (Sandbox Code Playgroud)

我得到

array([[ 2100000000, -1094967296]])
Run Code Online (Sandbox Code Playgroud)

我猜结果应该是数组([[ 30000*70000, 40000*80000]])。负数从何而来?我该怎么做才能得到预期的数组?

python numpy elementwise-operations

2
推荐指数
1
解决办法
1388
查看次数

Element-wise matrix multiplication for multi-dimensional array

I want to realize component-wise matrix multiplication in MATLAB, which can be done using numpy.einsum in Python as below:

import numpy as np
M = 2
N = 4
I = 2000
J = 300

A = np.random.randn(M, M, I)
B = np.random.randn(M, M, N, J, I)
C = np.random.randn(M, J, I)

# using einsum
D = np.einsum('mki, klnji, lji -> mnji', A, B, C)

# naive for-loop
E = np.zeros(M, N, J, I)
for i in range(I):
    for j …
Run Code Online (Sandbox Code Playgroud)

matlab sum multidimensional-array elementwise-operations numpy-einsum

2
推荐指数
1
解决办法
178
查看次数

将两个列表元素连接到一个 nxn 矩阵

我有两个带有字符串的列表,我想将它们按元素连接到 anxn 矩阵中。我已经尝试了下面的代码,但这只给了我 nx 1 个列表。

row = ['a','b','c']
col = ['a','b','c']

matrix = map(''.join, zip(row,col))
Run Code Online (Sandbox Code Playgroud)

预期输出将是这样的矩阵:

[['aa','ab','ac'],
 ['ba','bb','bc'],
 ['ca','cb','cc']])
Run Code Online (Sandbox Code Playgroud)

是否有使用常规 python 或 numpy 来完成此操作的解决方案?

python arrays numpy matrix elementwise-operations

2
推荐指数
1
解决办法
282
查看次数

跨多个列表的逻辑与运算

我有一本看起来像这样的字典:

d= {'GAAP':[True,True],'L1':[True,False],'L2':[True,True]}
Run Code Online (Sandbox Code Playgroud)

我想对字典中的每个值执行逻辑 AND 运算并返回True/False 值的列表。就像是:

for counter in range(0,2):
    print(d['GAAP'][counter] & d['L1'][counter] & d['L2'][counter])
Run Code Online (Sandbox Code Playgroud)

我的字典相当大,所以想避免手动输入每个键来执行逻辑 AND。

python boolean-operations elementwise-operations

2
推荐指数
1
解决办法
85
查看次数