|
Problem z importem tabelki
|
|
Forum MATLAB Strona Główna->
MATLAB
|
|
|
| |
AUTOR:
jakubmik
Początki pisania
Dołączył: 08 Cze 2010
Posty: 11
|
Jak zrobić coś takiego zeby matlab importował pliki od xx000.dat do xxx999.dat i zapisywał z nich po jednej wartości z danej kolumny i wiersza do jednego pliku .txt
Dziękuje za pomoc
|
| |
| |
AUTOR:
jakubmik
Początki pisania
Dołączył: 08 Cze 2010
Posty: 11
|
to sa tabele mniej wiecej 15x5000, a chciałbym do pliku zapisywac wartosc z komorki w wierszu 2618 w kolumnie 11.
Hm. nie działa.. rozumiem, ze powinienem zmienic jedynie xxx na nazwe pliku a "%03d.dat" zostawic na koncu tak jak jest? wyskakuje mi wtedy
??? Error using ==> importdata
Unable to open file.
Error in ==> Untitled1 at 3
data = importdata(fname);
|
| |
| |
AUTOR:
jakubmik
Początki pisania
Dołączył: 08 Cze 2010
Posty: 11
|
niestety, nie da rady, pliki .dat sa niedozwolone do załączenia
|
| |
| |
AUTOR:
darekc
Może pisać książki
Dołączył: 19 Lis 2007
Posty: 364
Skąd: P.Śl. Gliwice
|
Czy dane są w nich zapisane w postaci tekstowej czy binarnej?
|
| |
| |
AUTOR:
jakubmik
Początki pisania
Dołączył: 08 Cze 2010
Posty: 11
|
tesktowej
tym razem tez blad..
??? Index exceeds matrix dimensions.
Error in ==> Untitled1 at 6
A(num) = data(2618, 11);
podejrzewam, ze to cos z tym importdata nie dziala w porzadku, moze rzeczywiscie jakby udalo się to importowanie ominąć to wszytsko by działało
|
| |
| |
AUTOR:
darekc
Może pisać książki
Dołączył: 19 Lis 2007
Posty: 364
Skąd: P.Śl. Gliwice
|
To proszę zamieść chociaż parę wierszy takiego pliku. Czy we wszystkich plikach dane są zapisane w taki sam sposób?
|
| |
| |
AUTOR:
jakubmik
Początki pisania
Dołączył: 08 Cze 2010
Posty: 11
|
to może tak.. treść pliku .dat w .m (tylko że wierszy z danymi jest duużo więcej)
|
| |
| |
AUTOR:
jakubmik
Początki pisania
Dołączył: 08 Cze 2010
Posty: 11
|
a num i fname jak poprzednio?
czyli
for num = 1:1000
fname = sprintf('K1 200 .27341ae0.000%03d.dat', num);
T = textread(fname, '%s', 'delimiter', '\n');
line = char(T{2621}); % 2621 = 2618 + 3 (wiersze na początku, które pomijam)
data = str2num(line);
A(num) = data(11);
end
a moze można jakos otwierac te dat'y jako txt i z nich wybierac ta wartość? omijając w ten sposob importowanie?
|
| |
| |
AUTOR:
jakubmik
Początki pisania
Dołączył: 08 Cze 2010
Posty: 11
|
no nie wiem, znow mi nie działa:
??? Error using ==> textread
File not found.
Error in ==> Untitled1 at 4
T = textread(fname, '%s', 'delimiter', '\n');
|
| |
| |
AUTOR:
darekc
Może pisać książki
Dołączył: 19 Lis 2007
Posty: 364
Skąd: P.Śl. Gliwice
|
Tak jak napisałeś.
Gdyby wszystkie wiersze w pliku miały taką samą długość, to można byłoby się obejść bez wczytywania całego pliku.
Przypuszczam, że w fname powinna wystąpić tylko jedna kropka, ta przed rozszerzeniem.
|
| |
| |
AUTOR:
jakubmik
Początki pisania
Dołączył: 08 Cze 2010
Posty: 11
|
hm, a znasz jakisz szybki sposob na zmiane nazwy wielu plików? bo te kropki domyslnie wstawial mi inny program i nie ma jak tego ominac, a tych plikow mam pare tysiecy, wiec reczna zmiana nie wchodzi w gre
|
| |
| |
AUTOR:
darekc
Może pisać książki
Dołączył: 19 Lis 2007
Posty: 364
Skąd: P.Śl. Gliwice
|
Moje przypuszczenie okazało się niesłuszne. Wyświetl zawartość zmiennej fname i sprawdź, czy masz plik o takiej nazwie.
|
| |
|
|
Forum MATLAB Strona Główna->
MATLAB
|
|
|