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')]