首页 > 解决方案 > Julia 中的大数组

问题描述

我在 Julia 中有一个 10000x10000 数组,比如说A=rand(10000,10000)。如何存储那个大数组,以便在 Atom/Juno 等 IDE 中使用它,执行矩阵运算、行列式、特征值等?或者即使我将该数组转移到R,它是否是一种使用该大数组的方法R

标签: bigdatajulia

解决方案


如果您的数据是稀疏的(并非所有单元格都有值),您可以将其存储为稀疏矩阵,这将大大改善内存占用(请参阅https://docs.julialang.org/en/v1/stdlib/SparseArrays/)。它是否适合记忆还取决于矩阵的元素是什么。例如,您可以用 Int8 表示值还是需要 64 位精度元素?矩阵不仅仅是一个矩阵。

在更一般的说明中,如果您的对象变得如此之大以至于无法放入内存,您可以将它们写入磁盘并“内存映射”它们,这样您就可以将磁盘矩阵用于任何您可以使用的东西正常的矩阵。您可以在此处查看文档:https ://docs.julialang.org/en/v1/stdlib/Mmap


推荐阅读