R 프로그래밍에서 루프는 특정 조건이 충족될 때까지 루프하는 데 사용됩니다. m=n=10000의 경우 for 루프가 1분 이상 중단되고 벡터화된 루프는 2.54초가 필요합니다. 물론, 이러한 조치는 가볍게 취해야 하며 하드웨어 및 소프트웨어 구성에 따라 달라지며, 인터넷 브라우저에서 수십 개의 열린 탭으로 랩톱에 과부하가 걸리지 않도록 하고 백그라운드에서 실행되는 여러 응용 프로그램을 피해야 합니다. 그러나 이러한 조치는 차이점을 잘 설명합니다. 다음 예제는 약간 인공적이지만 일부 임의 노이즈에 신호가 추가된 것을 나타낼 수 있습니다: 이 예에서는 r의 while 루프에 대한 사용자 입력 값: 숫자 = 6 및 총 = 0초기화한 내부 너트와 bo를 살펴보면 가장 잘 설명됩니다. R의 lts, 별도 게시물을 요구 하지만 간결 하 게: 처음에, R 해석 된 언어 이며 따라서, 변수 정의 대 한 모든 세부 사항은 인터프리터에 의해 처리 됩니다. 예를 들어 숫자가 부동 점임을 지정하거나 메모리에 있는 포인터를 사용하여 메모리를 할당할 필요가 없습니다. 첫 번째 컴파일러는 While 루프 내부의 식을 확인합니다. 식 결과가 True이면 while 루프 블록 아래의 문 또는 문 그룹이 실행됩니다. 식 반환이 False이면 컴파일러는 루프에서 나와 while 루프 외부에서 다른 문을 실행합니다.

이 예제에서는 6까지 숫자의 제곱을 계산하기 위해 R의 단순 while 루프를 사용했습니다. 다른 용어로, 루프의 „자연”끝을 제외하고, 이는 반복의 규정 된 수에 도달했기 때문에 (for) 또는 조건을 충족했기 때문에 (동안 반복), 루프를 중지하거나 중단 할 수 있습니까? 키워드 옆에 있는 부울 식은 while 루프를 중지할 수 있을 뿐만 아니라 break 문이 while 루프 내부에 의도적으로 유지되었습니다. 예는 아래에 제공 : 이전 예제의 변형으로, 당신은 쓸 수 있습니다 : 조건이 FALSE를 보유하면 조건이 FALSE로 평가 될 때까지 반복됩니다, while 루프가 종료되면. 단어에서 볼 수 있듯이 벡터화는 단순 숫자(„scalars”)에서 반복되는 작업을 벡터 또는 행렬에 대한 단일 연산으로 변환하는 작업입니다. 위의 하위 섹션에서 이에 대한 몇 가지 예를 보았습니다. 예를 들어 다음 루프에서는 사용자 정의 함수 또는 UDF를 사용하여 유니버스및 모든 질문에 대한 정답을 입력하도록 요청합니다. 그런 다음 사용자가 올바른 답을 얻을 때까지 계속됩니다 :이 R while 루프 예제에서는 항상 숫자가 1이고 번호는 항상 1보다 작아서 루프가 무한 한 번 실행됩니다. 이제 위의 예제에 while 루프 내부에 + 연산자 (숫자 = 숫자 + 1)를 추가하십시오.

데이터 프레임을 자주 사용합니다: 이 경우 데이터가 동일한 형식또는 다른 형식의 강제 데이터 형식 변환이 발생할 수 있는지 확인해야 합니다. 예를 들어 혼합 텍스트 및 숫자 데이터 프레임에서 숫자 데이터는 문자열 또는 문자로 변환됩니다.