2016-07-17 3 views
0

옥타브 인터페이스를 통해 알려진 주소에서 파일을 다운로드하여 현재 폴더로 별도로 이동하지 않고도 CSV 파일을 다운로드하고 열 수 있기를 원합니다. 많은 수의 CSV 파일을 다운로드하려고하는데 손으로해야 할 고통이 있습니다.옥타브에서 온라인 파일 열기

이상적으로 dlmread ('http://...csv')와 같은 형식으로 Octave가 파일을 찾도록합니다. 물론 이것은 작동하지 않습니다.

Matlab 용 솔루션도 나에게 도움이 될 것입니다. 감사.

+1

참조가 옥타브에서 다운로드 urlread. https://www.gnu.org/software/octave/doc/v4.0.0/URL-Manipulation.html – Andy

답변

0

옥타브/매트랩 본래의 파일 다운 그레이드 방식이 아닌 것 같지만 스크립트 내에서 CSV 파일의 다운로드 및 읽기를 자동화하는 간단한 방법으로 옥타브 스크립트를 실행하기 전에 수동으로 파일을 다운로드하고 이동하십시오. 맞습니까?

위의 설명에서 제안 된 urlread는 한 가지 방법이지만 사용자가 직접 데이터로 해석해야하는 문자열로 고정되어 있습니다.

내 접근 방식은 system 함수를 사용하여 기본 OS에서 다운로더 명령을 실행하는 것입니다. wget을 권하고 싶습니다. 그것은 리눅스에 준비되어 있고, Windows wget.exe 버전을 다운로드 할 수 있습니다. 즉, wget이 다운로드를 처리하고 csvread와 같은 표준 csv 기능을 사용하여 .csv 파일을 엽니 다.

그래서 다운로드하고 CSV 파일의 배치를 처리하기 위해, 스크립트는 다음과 같이 보일 수 있습니다

for n = 1 : 10 
    wgetCommand = sprintf ('wget http://path/to/my/data%d.csv', n); 
    Exitcode = system (wgetCommand); 
    assert (Exitcode == 0, sprintf ('%s failed!\n', wgetCommand)); 
    M = csvread (sprintf('./data%d.csv', n)); 
    % ... do something with M 
end 
+0

분명히 urlread를 사용하여 파일을 읽은 다음 csv 및 * then *으로 디스크에 직접 쓸 수도 있습니다. 문자열을 손으로 토큰 화하는 것을 다루지 않으려면 csv로 다시 읽으십시오. 하지만이 경우 OS 명령을 사용하는 것이 합법적이라고 생각합니다. 특히 이것은 개인적인 용도로 사용되는 것으로 들리는데, wget이 없으므로 문제가 발생할 수있는 사람들에게 당신이 줄 수있는 것이 라기보다. –