2011-11-11 27 views
5

Tôi đã tải xuống một tập dữ liệu mà tôi quan tâm. Tuy nhiên, nó ở định dạng .mat và tôi không có quyền truy cập vào Matlab.Trích xuất dữ liệu .mat mà không có MATLAB - đã thử scilab không thành công

Tôi đã thực hiện một số giải pháp và nói rằng tôi có thể mở nó trong SciLab.

Tôi đã thử một vài điều, nhưng tôi chưa tìm thấy bất kỳ hướng dẫn hay về điều này.

tôi đã làm

fd = matfile_open ("file.mat")

matfile_listvar (fd)

và in ra tên tập tin mà không có phần mở rộng. Tôi cố gắng

var1 = matfile_varreadnext (fd)

và đó chỉ mang lại cho tôi "var1 ="

tôi không thực sự biết làm thế nào dữ liệu được tổ chức. Kho lưu trữ mô tả dữ liệu chứa, nhưng không phải cách nó được tổ chức.

Vì vậy, câu hỏi của tôi là, tôi đang làm gì sai khi trích xuất/xem dữ liệu này? Tôi không cam kết với SciLab, nếu có một công cụ tốt hơn cho điều này, tôi mở cửa cho điều đó.

Trả lời

7

Một tùy chọn là sử dụng Octave, có thể đọc tệp .mat và chạy hầu hết các tệp Matlab .m. Octave là mã nguồn mở với các tệp nhị phân có sẵn cho Linux, Mac và Windows. Bên trong Octave bạn có thể tải tệp bằng cách sử dụng:

load file 

Xem Octave's manual section 14.1.3 Simple File I/O để biết thêm chi tiết.

0

tôi đã quan tâm này cùng một vài năm trở lại. Tôi đã sử dụng this question làm hướng dẫn. Nó sử dụng Python và SciPy. Có những lựa chọn cho NumPy và hd5f là tốt. Một tùy chọn khác là viết trình đọc của riêng bạn cho định dạng .mat bằng bất kỳ ngôn ngữ nào bạn cần. Đây là số link to the mat file format definition.

Các vấn đề liên quan