第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Matlab 中保存矢量文件并在 Python 中放入數(shù)組

在 Matlab 中保存矢量文件并在 Python 中放入數(shù)組

元芳怎么了 2023-09-12 17:22:30
我在 Matlab 中保存了一個包含矢量信息的文件:x = [1 2 3 4 5 6 7 8 9 10]在此處輸入鏈接描述https://www.dropbox.com/s/lxq66hlo9p37ad2/test.mat?dl=0我如何在Python中讀取這個文件以獲得數(shù)組中相同的向量x?我試過這個:from scipy.io import loadmatx = scipy.io.loadmat('test.mat')print (x[0])但它似乎只是讀取文件而不放入數(shù)組。如果我print x[0]有一個錯誤。Traceback (most recent call last):  File "/home/mateus/Desktop/test.py", line 16, in <module>    print (x[0])KeyError: 0>>> 
查看完整描述

1 回答

?
蝴蝶不菲

TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超4個贊

當(dāng)您在 MATLAB 中保存數(shù)據(jù)時,它保存到文件中的是包含所有變量的工作區(qū)。您可以限制保存哪些變量,但即使在這種情況下,它也會保存為包含指定變量的工作區(qū)。

這意味著,即使test.mat其中只有 MATLAB 中的變量“x”,當(dāng)您test.mat在 python 中加載時x = scipy.io.loadmat('test.mat'),您也不會只得到“x”作為 NumPy 數(shù)組。如果你寫,print(type(x))你會發(fā)現(xiàn)它實(shí)際上是一本字典。這就是為什么你有一個KeyError例外。這本字典里沒有任何東西0作為鍵。

您需要在 MATLAB 中指定原始變量的名稱(在本例中也是“x”)才能獲取實(shí)際的數(shù)組。

那是,

x = scipy.io.loadmat('test.mat')
print(x["x"])

印刷

[[ 1  2  3  4  5  6  7  8  9 10]]

這是一個 2D NumPy 數(shù)組,表示一個行十列的矩陣。


最后一點(diǎn),請記住 MATLAB 中的向量是“列向量”,這意味著它們的維度為1xn。畢竟 MATLAB 喜歡將一切都視為矩陣。在 NumPy 中,向量是實(shí)際的一維數(shù)組,但由于數(shù)據(jù)來自 MATLAB,因此當(dāng)您在 Python 中加載數(shù)據(jù)時會得到一個二維數(shù)組。


查看完整回答
反對 回復(fù) 2023-09-12
  • 1 回答
  • 0 關(guān)注
  • 118 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號