Python veya matlabda 60000X70000 matrisini içeren çoğaltma gerçekleştirmem gerekiyor. 16GB'lık bir RAM'ım var ve matrisin her bir satırını kolayca yükleyebiliyorum (buna ihtiyacım var). Matrisi bir bütün olarak python'da oluşturabilirim ama matlabda değil. Yine de her satırı ayrı ayrı yükleyebilmem için diziyi h5py veya scipy kullanarak v7.3 .mat dosyası olarak kaydedebilir miyim?Python'da v7.3'ün bir .mat dosyası oluşturma
cevap
MATLAB v7.3 için hdf5storage
'u h5py
numaralı telefonu kullanabilirsiniz, dosyayı buradan indirin, ayıklayın ve bir komut isteminden: python setup.py install
yazın. MATLAB kerede her şeyi yüklemek yapamıyorsanız https://pypi.python.org/pypi/hdf5storage
import h5py
import hdf5storage
import numpy as np
matfiledata = {} # make a dictionary to store the MAT data in
matfiledata[u'variable1'] = np.zeros(100) # *** u prefix for variable name = unicode format, no issues thru Python 3.5; advise keeping u prefix indicator format based on feedback despite docs ***
matfiledata[u'variable2'] = np.ones(300)
hdf5storage.write(matfiledata, '.', 'example.mat', matlab_compatible=True)
, sana farklı değişkenler kaydetmek gerekecek düşünüyorum matfiledata[u'chunk1'] matfiledata[u'chunk2'] matfiledata[u'chunk3']
vb Eğer her öbek kaydederseniz MATLAB'ta Sonra
değişken vb
load(filename,'chunk1')
do stuff...
clear chunk1
load(filename,'chunk2')
do stuff...
clear chunk2
hdf5storage.savemat P içine okunacak dosyanın izin vermek için bir parametre vardır Eğer böyle bir şey yapmak rağmen ython doğru yüzden incelemeye değer ve scipy.io.loadmat biçimine uygundur gelecekte ... MATLAB'den verileri kaydetme kolay Python geri almak için yapmak durumunda:
MATLAB
save('example.mat','-v7.3')
Python
matdata = hdf5storage.loadmat('example.mat')
Bu, Python'a bir sözlük olarak geri yükler, daha sonra ihtiyacınız olan veri tiplerine dönüştürebilirsiniz.
- 1. MATLAB kullanmadan .mat dosyası nasıl açılır?
- 2. MAT
- 3. Nümerik dizi veya pandalarla pythonda rutini sadeleştirme
- 4. Bir cv :: Mat
- 5. Bir OpenCV cv :: Mat
- 6. Mat Baskı *
- 7. kullanma Mat
- 8. Uçta RDP dosyası oluşturma
- 9. Klasörden zip dosyası oluşturma
- 10. Qt5.5 Komut Dosyası Oluşturma
- 11. .zip dosyası oluşturma
- 12. MySQL Excel dosyası oluşturma
- 13. MATLAB .mat dosyasında
- 14. heredoc kullanarak yeni bir metin dosyası oluşturma
- 15. AWS Lambda işlevinde bir parke dosyası oluşturma
- 16. Python'da sahte metin dosyası oluşturma
- 17. Titanium kullanarak excel dosyası oluşturma
- 18. JavaScript içinde metin dosyası oluşturma
- 19. php ile csv dosyası oluşturma
- 20. eshell ile komut dosyası oluşturma
- 21. PdfReport kullanarak .xlsx dosyası oluşturma
- 22. OpenCV Mat CV_32FC1
- 23. OpenCV cv :: Mat set
- 24. Mat imzasız char *
- 25. OpenCV C++ Mat ÇILGINLIĞI
- 26. dönüştürme Mat ve C/C++
- 27. Eclipse: MAT hatası
- 28. Bir Mat öğesinden IplImage'a dönüştürme dönüştürme *
- 29. SQL Server'da SQL sorgusu kullanarak tablo oluşturma komut dosyası oluşturma
- 30. Bellekte zip dosyası oluşturma []. Zip dosyası her zaman bozuk
Sözlük adlarının adını u'name olarak yazmayı unuttunuz mu? – Matt
Teşekkürler! Ama 'hdf5storage.write' komutunu çalıştırmaya çalışırken bir bellek hatası alıyorum bir geçici çözüm var mı? –
evet Şimdi çözdüğüm sözlük anahtarının doğru sözdizimini unuttum. –