SON PAYLAŞILANLAR

Site içi arama

7 Mayıs 2014 Çarşamba

0 MATLAB Toplu Dosya Açma

Bu yazımda sizlerle Matlab programını kullanarak herhangi bir klasör içinde bulunan tüm dosyaların tek bir seferde açılmasını göstereceğim. Kodların yanına açıklamalarını ve ne işe yaradığını yazdım.

[pathname] = uigetdir('C:\');
files = dir( fullfile(pathname,'*.mat') );    % Tüm .mat dosyalarını çağır
files = {files.name}';                              % Dosya isimleri

Kırmızı olan kısımdaki .*mat yazısını .*jpg yaparsanız klasör içerisindeki tüm .jpg uzantılı dosyaları açabilirsiniz.

Açılan dosya, içerisinde veri bulunduran bir data dosyası ise (.txt, .mat vb.) aşağıdaki kodları programa ekleyerek dosya(lar)ın içeriğini görebilirsiniz.

data = cell(numel(files),1);                     % Dosya içeriğini sakla
for i=1:numel(files)
    fname = fullfile(pathname,files{i});     % Dosyanın uzantısı
    data{i} = load(fname);                      % Dosya yükle
end

Data dosyalarının içeriğini tek seferde excel'e aşağıdaki kodları programınıza ekleyerek aktarabilirsiniz.

for j=1:i
X_13(j,1:13)=[data{j,1}.igs_tecmap];
X_48(j,1:48) = interp1(1:13,X_13(j,1:13),1:0.255:13);   % Doğrusal enterpolasyon ile değerleri genişlet
end

xlswrite('igs_13.xls',X_13)                                              % Açılan tüm .mat dosyalarını excel'e aktar
xlswrite('igs_48.xls',X_48)

Kırmızı ile yazılan kısım {1:13} boyutundaki vektör verisini {1:45} boyutundaki vektör verisine çevirmek için kullanıldı. Yani değerleri doğrusal (linear) enterpolasyon ile genişlettik. Aşağıdaki örneği inceleyebilirsiniz.

>> X_13(1,1:13)

ans =

  Columns 1 through 11

   17.1314   11.7520    9.1560    8.6740    8.9391    7.9706   11.4266   20.6900   26.4974   28.4474   33.0854

  Columns 12 through 13

   31.1518   20.2963

>> X_48(1,1:48)

ans =

  Columns 1 through 11

   17.1314   15.7597   14.3879   13.0162   11.7001   11.0381   10.3761    9.7141    9.1367    9.0138    8.8909

  Columns 12 through 22

    8.7680    8.6899    8.7575    8.8251    8.8927    8.8616    8.6147    8.3677    8.1207    8.3162    9.1974

  Columns 23 through 33

   10.0787   10.9600   12.5382   14.9004   17.2625   19.6247   21.5030   22.9839   24.4648   25.9457   26.8094

  Columns 34 through 44

   27.3067   27.8039   28.3012   29.2823   30.4650   31.6477   32.8304   32.6987   32.2056   31.7125   31.2194

  Columns 45 through 48

   28.7636   25.9954   23.2273   20.4592

Yorum Gönder

Yorumlama biçimi: Anonim seçerek yorumlarınızı yapabilirsiniz.

Yükleniyor...
 
Telif Hakkı © 2017 Tüm hakları saklıdır. HARİTA ONLINE
Bu site Blogger tarafından desteklenmektedir.