2013-12-09 2 views
2

나는 문자 벡터에서 URL 목록을 가지고 있으며 x 쿼리가 거부 되었기 때문에 쿼리 사이에서 프로세스를 일시 중지하려고합니다. 여기R 여러 함수가 lapply에

urls=c('url1','url2','url3') 

가 나는 저스틴 제안으로

htmlpages=lapply(urls,function(x) readLines(x) Sys.sleep(0.3)) 
+1

'{'...'htmlpages = lapply (urls, function (x) {y <- readLines (x); Sys.sleep (0.3), y})'를 사용하십시오. 그러나 명확성을 위해 여러 줄 함수로 작성하는 것이 훨씬 좋습니다. – Justin

+0

당신의 도움을 주셔서 감사합니다, 만약 내가 프로세스를 이해하면, 그것은 일시적으로 데이터를 저장 한 다음 일시 중지 후 목록에 y를 반환하고 다음 url을 처리합니까? 구문 세미콜론을 쉼표로 설명 할 수 있습니까? – user3083330

+0

쉼표는 오류이므로 세미콜론이어야합니다. 리치가 쓴 글을 보라. 한 줄은 위험한 계획입니다. – Justin

답변

5

을 수행 할 원하는 서식 열쇠입니다.

htmlpages = lapply(
    urls, 
    function(x) 
    { 
    y <- readLines(x) 
    Sys.sleep(0.3) 
    y 
    } 
) 
+0

감사합니다. 어떻게이 함수를 한 줄로 작성합니까? – user3083330

+2

여러 명령을 세미콜론';'을 사용하여 구분할 수 있지만, 일반적으로 코드를 명확하게 작성하는 것이 좋습니다. 잘못된 형식의 코드는 버그를 낳을 수있는 기반이됩니다. –