我有一个数据源,是一个三维数组。
我使用第一维数作为节数。
我使用第三维空间作为每个部分的项目。
以下是一些示例数据:
let sentence1 = [word1, word2, word1] // These are Word objects
let sentence2 = [word1, word2, word3] // in my model.
let sentence3 = [word4, word5, word3]
let paragraph1 = [sentence1, sentence2] // These are Sentence objects.
let paragrap
我有三个numpy 2D数组:
A1 with the shape of (x * y)
A2 with the shape of (x * z)
A3 with the shape of (y * z)
这三个数组中的值要么是True,要么是False。现在,我希望创建一个形状的三维数组(x *y* z),以便3D数组中的每个元素如下所示:
3D_array[x, y, z] = A1[x, y] & A2[x, z] & A3[y, z]
我知道我可以做一个循环。但是有什么更快的方法吗?像通过矢量化?
或者,这三个二维数组实际上只是三个一维数组之间的某种成对交互作用。因此,
我有一个三维矩阵X,尺寸为a x b x c。
我想在MATLAB中创建一个三维矩阵Y,如下所示:
X = rand(10, 10, 5);
[a, b, c] = size(X);
for i = 1 : c
for j = 1 : a
for k = 1 : b
if j<a && k<b
Y(j, k, i) = X(j+1, k, i) + X(j, k+1, i).^4;
else
Y(j, k, i) = X(a,
我已经编写了在THREE.js中呈现16x16长方体分组的代码。 const drawGroup = () => {
const blockConstant = 16
// Positions
for (let x = 0; x < blockConstant; x++) {
for (let y = 0; y < blockConstant; y++) {
for (let z = 0; z < blockConstant; z++) {
const mesh = n
我有一个非常大的三维数组,包含一些数据-2x10000 x 4000。我将处理一些数据,但我不需要知道第一个维度(2)。
有没有一种简单的方法来使用我的2x10000 x 4000三维数组,并创建一个维数为10000 x 4000的二维数组?这可以在不使用循环的情况下由完成吗?是否有一个复制函数或类似的东西,允许我将单个维度(或多个)的数组元素复制到一个全新的数组中?
我必须使用A类作为元素创建一个三维数组,A类的定义如下所示,我应该使用vector<vector<vector<A> > >还是boost::multi_array?哪一个更好?
struct C
{
int C_1;
short C_2;
};
class B
{
public:
bool B_1;
vector<C> C_;
};
class A
{
public:
bool A_1;
B B_[6];
};
我试图在python中创建3D数组,使用Numpy,并将2D数组相乘到三维。我在Numpy多维数组中非常新,基本上我在这里遗漏了一些重要的东西。
在本例中,我试图使用基本的2D数组(10x10)复制20次,从而生成10x10x203D数组。
我开始的二维数组:
a = zeros(10,10)
for i in range(0,9):
a[i+1, i] = 1
我试图创建的3D数组:
b = zeros(20)
for i in range(0,19):
b[i]=a
这种方法可能很愚蠢。那么,从基本的二维阵列来构建三维阵列的正确方法是什么呢?
干杯。
编辑很好,我做错事,可