首页  >  文章  >  web前端  >  JavaScript 数组操作

JavaScript 数组操作

WBOY
WBOY原创
2024-09-01 21:13:021176浏览

JavaScript Array Manipulations

在 JavaScript 中操作 2d、3d 或 4d 数组对于 AI 模型训练和图像/音频/视频分析是必要的。

下面是一些使用纯 JavaScript 进行数组操作的有用函数,无需使用 Tensorflow.js 等矩阵包。

二维数组的转置

function transpose_2d_array(arr) {

    var transpose_colNum = arr.length;
    var transpose_rowNum = arr.at(0).length;
    var transpose_arr = [];
    for (var i=0; i<transpose_rowNum ; i++) {
        const col = Array.from({ length: transpose_colNum }, (_, i) => 0);
        transpose_arr.push(col);
    }

    for (var i=0; i<arr.length; i++) {
        for (var j=0; j<arr.at(i).length; j++) {
            transpose_arr[j][i] = arr[i][j];
        }
    }
    return transpose_arr;
}

打印数组的形状

async function recur_func(arr) {
    if (arr != undefined) {
        return [arr[0], arr.length];
    } else {
        return arr;
    }
}

async function shape(arr) {
    var out = await recur_func(arr);
    var shap = [out[1]];
    var c = 0; // typically work with 4D arrays or less
    while (out != undefined && c < 4) {
        out = await recur_func(out[0]);
        if (out != undefined) {
            shap.push(out[1]);
        }
        c = c + 1;
    }
    return shap.slice(0, shap.length-1);
}

我希望这些数组实用函数对某人有所帮助。

快乐练习! ?

以上是JavaScript 数组操作的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn