cat()과 print()로 출력 표시하기
콘솔 출력에 사용하는 cat()과 객체에 사용하는 print()의 차이를 이해합니다.
cat()과 print()로 출력 표시하기은(는) CoddyKit의 무료 R Academy 강의입니다. 이것은 4개 중 3번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 R Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. R Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
print() — 기본 출력 함수
print()는 객체를 표시하는 R의 기본 메서드입니다. 객체의 클래스를 사용하여 올바른 형식 지정 메서드를 선택합니다. 대화형 세션에서 변수 이름을 입력하는 것은 해당 변수에 print()를 호출하는 것과 같습니다.
x <- c(1, 2, 3, 4, 5)
print(x)
# Equivalent to:
xcat() — 원시 문자 출력
cat()은 인수를 원시 텍스트로 연결하여 출력합니다. 주위에 따옴표를 붙이지 않고, [1]과 같은 인덱스 표시도 추가하지 않으며, 기본적으로 끝에 줄 바꿈도 추가하지 않습니다. R 객체를 표시하기보다는 형식이 지정된 텍스트를 출력하도록 설계되었습니다.
name <- 'Alice'
age <- 30
cat('Name:', name, '\n')
cat('Age:', age, '\n')
cat('Score:', 92.5, '\n')주요 차이점: 따옴표와 [1]
가장 눈에 띄는 차이점은 문자 문자열을 표시하는 방식입니다. print()는 문자열을 따옴표로 감싸고 [1]을 추가하지만, cat()은 장식 없이 원시 문자를 출력합니다.
msg <- 'Hello World'
print(msg)
cat(msg, '\n')sep 인수를 사용하는 cat()
cat()은 각 출력 항목 사이에 삽입되는 sep 인수를 받습니다. 기본값은 공백 하나입니다. 구분자 없이 출력하려면 sep = ''을 사용하고, 출력을 정확하게 형식 지정하려면 다른 문자열을 사용합니다.
cat('a', 'b', 'c', sep = '')
cat('a', 'b', 'c', sep = '-')
cat(1:5, sep = ', ')
cat('x =', 42, sep = '')fill 인수를 사용하는 cat()
fill 인수는 출력이 지정된 너비(문자 수)를 초과할 때 줄 바꿈을 추가합니다. fill = TRUE로 설정하면 현재 width 옵션을 사용합니다. 긴 단어 나열을 줄바꿈할 때 유용합니다.
words <- c('The', 'quick', 'brown', 'fox', 'jumps',
'over', 'the', 'lazy', 'dog')
cat(words, fill = 30)print() 메서드 선택
print()는 제네릭 함수로, 클래스별 메서드를 선택하여 호출합니다. 예를 들어 print.data.frame은 데이터 프레임을 보기 좋게 형식 지정하고, print.factor는 수준을 표시합니다. 따라서 같은 호출도 객체에 따라 다르게 보입니다.
# print dispatches differently per class
print(42L) # integer
print(factor(c('a', 'b', 'a'))) # factor with levels
print(list(x = 1, y = 'hi')) # listinvisible() — 자동 출력 억제
invisible(x)는 인수를 반환하지만, 함수나 표현식에서 값이 반환될 때 자동으로 출력되는 것을 억제합니다. 대입 연산자처럼 값을 조용히 반환하는 함수에서 사용합니다.
# Explicit print shows the value
f <- function(x) invisible(x * 2)
result <- f(5)
# Nothing printed automatically
f(5)
# But print() forces it
print(f(5))message() — stderr로 출력
message()는 stdout이 아니라 stderr에 씁니다. 자동으로 줄 바꿈을 추가합니다. cat()이나 print()와 달리 메시지는 suppressMessages()로 억제하고 tryCatch()로 포착할 수 있습니다.
message('This goes to stderr')
cat('This goes to stdout\n')
# Suppress messages:
suppressMessages(message('hidden'))
cat('Still visible\n')cat()과 print() 중 무엇을 사용할까요
사람이 읽을 수 있는 텍스트 출력, 즉 기록 줄, 진행 메시지, 형식이 지정된 보고서를 만들려면 cat()을 사용합니다. R 객체를 형식과 구조를 유지한 채 정확하게 검사하려면 print()를 사용합니다.
# cat() for formatted output
cat(sprintf('Processing %d records...\n', 500))
cat('Done.\n')
# print() to inspect objects
result <- list(n = 500, mean = 4.2, sd = 1.1)
print(result)데이터 프레임에 print() 사용하기
print.data.frame은 행 번호, 열 머리글, 정렬된 값과 함께 데이터 프레임의 형식을 지정합니다. print(df, n = k)와 같은 방식으로 사용하거나 출력 전에 head()를 사용하여 표시할 행 수를 제어할 수 있습니다.
df <- data.frame(
name = c('Alice', 'Bob', 'Carol'),
score = c(88, 95, 72)
)
print(df)반복문 진행 상황에 cat() 사용하기
cat()의 실용적인 용도 중 하나는 반복문 진행 상황을 출력하는 것입니다. cat()은 자동으로 줄 바꿈을 추가하지 않으므로 줄을 조금씩 구성한 다음 '\n'으로 줄을 끝낼 수 있습니다.
for (i in 1:5) {
cat(sprintf('Processing file %d of 5...\n', i))
}
cat('All files processed.\n')빠른 확인
어떤 출력 함수가 stderr에 쓰고, 자동으로 줄 바꿈을 추가하며, suppressMessages()로 억제할 수 있습니까?
출력 함수: 핵심 정리
R 출력 함수의 핵심 정리:
print(x)— R 객체를 검사합니다. 클래스별 형식 지정을 사용하며[1]과 따옴표를 추가합니다.cat(...)— 원시 텍스트를 출력합니다. 따옴표와 자동 줄 바꿈이 없으며'\n'을 명시적으로 사용합니다.cat()은 형식 지정을 제어하는sep와fill을 받습니다.invisible(x)— 자동으로 출력하지 않고 x를 반환합니다.message()— stderr로 보내고 자동으로 줄 바꿈을 추가하며suppressMessages()로 억제할 수 있습니다.- 형식이 지정된 보고서와 기록을 만들 때
cat()과sprintf()를 함께 사용합니다.
x <- 'result'
print(x) # shows: [1] "result"
cat(x, '\n') # shows: result
message('info: ', x) # goes to stderr
f <- function() invisible(42)
f() # nothing printed
print(f()) # forces print: [1] 42자주 묻는 질문
“cat()과 print()로 출력 표시하기” 강의는 무료인가요?
네 — “cat()과 print()로 출력 표시하기” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 R Academy 강의 전체를 잠금 해제할 수 있습니다. R Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“cat()과 print()로 출력 표시하기”에서 뭘 배우나요?
콘솔 출력에 사용하는 cat()과 객체에 사용하는 print()의 차이를 이해합니다. 브라우저에서 직접 실행하는 실습 코드로 R Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
R Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 R Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 3번째 강의입니다.
“cat()과 print()로 출력 표시하기” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 R Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 R Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- paste()와 paste0()로 문자열 만들기
- sprintf()를 사용한 형식 지정 출력
- cat()과 print()로 출력 표시하기
- 문자열 패딩과 정렬