SciPy - อินพุตและเอาต์พุต
แพ็คเกจ Scipy.io (อินพุตและเอาต์พุต) มีฟังก์ชั่นที่หลากหลายเพื่อใช้กับไฟล์รูปแบบต่างๆ รูปแบบเหล่านี้บางส่วน ได้แก่ -
- Matlab
- IDL
- ตลาดเมทริกซ์
- Wave
- Arff
- Netcdf ฯลฯ
ให้เราพูดคุยโดยละเอียดเกี่ยวกับรูปแบบไฟล์ที่ใช้บ่อยที่สุด -
MATLAB
ต่อไปนี้เป็นฟังก์ชันที่ใช้ในการโหลดและบันทึกไฟล์. mat
เลขที่ | ฟังก์ชั่นและคำอธิบาย |
---|---|
1 | loadmat โหลดไฟล์ MATLAB |
2 | savemat บันทึกไฟล์ MATLAB |
3 | whosmat แสดงรายการตัวแปรภายในไฟล์ MATLAB |
ขอให้เราพิจารณาตัวอย่างต่อไปนี้.
import scipy.io as sio
import numpy as np
#Save a mat file
vect = np.arange(10)
sio.savemat('array.mat', {'vect':vect})
#Now Load the File
mat_file_content = sio.loadmat(‘array.mat’)
Print mat_file_content
โปรแกรมข้างต้นจะสร้างผลลัพธ์ต่อไปนี้
{
'vect': array([[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]]), '__version__': '1.0',
'__header__': 'MATLAB 5.0 MAT-file Platform: posix, Created on: Sat Sep 30
09:49:32 2017', '__globals__': []
}
เราสามารถดูอาร์เรย์พร้อมกับข้อมูล Meta หากเราต้องการตรวจสอบเนื้อหาของไฟล์ MATLAB โดยไม่อ่านข้อมูลลงในหน่วยความจำให้ใช้ไฟล์whosmat command ดังแสดงด้านล่าง
import scipy.io as sio
mat_file_content = sio.whosmat(‘array.mat’)
print mat_file_content
โปรแกรมข้างต้นจะสร้างผลลัพธ์ต่อไปนี้
[('vect', (1, 10), 'int64')]