问题标签 [mat-file]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matlab - 对包含对象的大量小型 .mat 文件进行高效磁盘访问
我正在尝试确定存储大量小型 .mat 文件的最佳方式,大约 9000 个大小从 2k 到 100k 的对象,总共大约半个演出。
典型的用例是我一次只需要从磁盘中提取少量(比如 10 个)文件。
我试过的:
方法 1:如果我单独保存每个文件,我会遇到性能问题(保存时间非常慢并且系统在一段时间后运行缓慢),因为 Windows 7 难以处理,因此文件夹中的文件可能会出现(而且我认为我的 SSD 过得不好)也是)。但是,最终结果很好,我可以非常快速地加载我需要的内容。这是使用“-v6”保存。
方法 2:如果我将所有文件保存在一个 .mat 文件中,然后只加载我需要的变量,则访问速度非常慢(加载时间大约是加载整个文件所需时间的四分之三,变化很小,具体取决于保存的顺序)。这也是使用“-v6”保存。
我知道我可以将文件分成许多文件夹,但这似乎是一个令人讨厌的黑客行为(并且不会解决 SSD 不喜欢写很多小文件的问题),有没有更好的方法?
编辑:这些对象主要由一个双精度数据的数字矩阵和一个伴随的 uint32 标识符向量,以及一堆小的识别属性(字符和数字)组成。
python - Python to Mat-file:将字符串列表导出到普通字符矩阵(不是单元格数组!)
Python 上的这段代码在 .mat 文件中创建单元格“STRINGS”:
在matlab中我得到单元格字符串:
我怎么能得到普通的矩阵?例如:
编辑
如果我运行以下代码,我会误解数组重整。
Python:
MATLAB:
python - matlab to python:获取matlab元胞数组值
我对 matlab 和 python 非常陌生,需要在 python 中使用 matlab 单元格数组中的一些值。
我有一个整数元胞数组,在我执行这行代码并打印结果之后,我得到了这个:
并继续打印。
有人可以向我解释一下单元阵列是如何排列的吗?(那么上面是多少维?)
然后我有几个问题:1)在这个单元格数组中,有变量“标签”和“坐标”被分配给一个数组/单元格(我不知道哪个是实际使用的术语)——粗体的值. 我想用 Python 编写来访问这些值。我应该怎么做?
2)为了测试,我尝试了这个->juncInfoF = a.get('juncForward_c')
当我尝试打印juncInfoF时,它打印'None'。为什么呢?我很困惑,因为之前我尝试过这个,它有效。我什至可以这样做 -> print juncInfo[0][9][0][0]
。但现在我什至不能做上述任何事情。
r - R:帮助将特定的 .mat 文件读入 R
所以我一直在尝试将这个特定的.mat文件读入R。我对matlab不太了解,但我知道R.matlab包只能将未压缩的数据读入R,并将其保存为未压缩我需要在 matlab 中使用
save new.mat -v6
.
好的,所以我这样做了,但是当我readMat("new.mat")
在 R 中使用时,它永远被卡住了。我还尝试通过以下方式使用包 hdf5:
我不确定这个问题可能是什么,但如果有人想弄清楚这个文件位于http://dibernardo.tigem.it/MANTRA/MANTRA_online/Matlab_Code%26Data.html 并称为库存。 mat(第一个文件)。
谢谢你的帮助!
database - 从 mat 文件而不是从数据库中读取数据的好处
我已经看到一些代码从 mat 文件中读取大数据,而不是在数据库上进行查询。与使用数据库相比,这样做有什么好处?是否可以轻松地将 mat 文件内容移动到数据库中,反之亦然?
matlab - 验证 .mat 文件是否存在且未损坏 - Matlab
我有 2 个独立的 Matlab 工作人员,第一个获取/保存数据,第二个读取它(并进行一些计算等)。
FIRST 将数据保存为硬盘上的 .mat 文件,而 SECOND 从那里读取数据。SAVE
将这些数据转换为 .mat需要大约 20 秒,而它需要 8 毫秒DELETE
。在保存数据之前,首先删除旧文件,然后保存新版本。
SECOND 如何验证数据是否存在is not corrupt
?我可以使用exists
,但这并不能告诉我数据是否损坏。例如,如果 SECOND 试图在 FIRST 保存数据时准确地读取数据,则exists
通过但LOAD
会给您一个错误消息 - 数据损坏等。
谢谢。
matlab - 如何在 MATLAB 中加载大文件(~150MB)?
我有一个矩阵形式的大型 MATLAB 文件(150MB)(即 4070x4070)。我需要在 MATLAB 中处理这个文件,但我似乎无法加载这个文件。我收到“内存不足”错误。有没有其他方法可以加载这种大小的文件?我使用的是 32 位处理器并有 2GB 的 RAM。请帮助我,我处理这个问题已经筋疲力尽了。
python - 使用 savemat 保存和加载 Python dict 会导致错误
这是我得到的错误的一个最小示例。如果我正确理解了文档,这应该可以工作,但似乎我没有。
python - 在 Python 中创建三维矩阵结构并写入 mat 文件
我对 Python 很陌生。我需要一个 3 维矩阵,以便以一定长度保存 8 x 8 矩阵。让我们拨打 530。问题是我使用了 np.array,因为 numpy 认为矩阵不能超过 2 维。
R = zeros([8,8,530],float)
我将我的 8 x 8 矩阵计算为 np.matrix
R[:,:,ii] = smallR
然后我尝试将其保存在 mat 文件中,因为 scipy 声称这样做。
sio.savemat('R.mat',R)
但是,错误说“numpy.ndarray”对象没有属性“项目”
/usr/local/lib/python2.7/dist-packages/scipy/io/matlab/mio.py:266: FutureWarning: Using oned_as default value ('column') This will change to 'row' in future versions
oned_as=oned_as)
Traceback (most recent call last):
File "ClassName.py", line 83, in <module>
print (buildR()[1])
File "ClassName.py", line 81, in buildR
sio.savemat('R.mat',R)
File "/usr/local/lib/python2.7/dist-packages/scipy/io/matlab/mio.py", line 269, in savemat
MW.put_variables(mdict)
File "/usr/local/lib/python2.7/dist-packages/scipy/io/matlab/mio5.py", line 827, in put_variables
for name, var in mdict.items():
AttributeError: 'numpy.ndarray' object has no attribute 'items'
matlab - 在 MATLAB 中访问 .mat 文件(不使用 Load 函数)
我在 Matlab 中有一个(矩阵)结构,已保存在硬盘上。我目前用来load
在我的函数中加载这些文件。你有什么建议以更快的方式来做这件事吗?
(是的,我可以将结构作为变量传递给我的函数,但由于内存问题,这是不可能的!)。谢谢!这将是一个很大的帮助!