0Pricing
R Academy · Pelajaran

Menampilkan Output dengan cat() dan print()

Bedakan cat() untuk output konsol dan print() untuk objek.

Menampilkan Output dengan cat() dan print() adalah pelajaran R Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar R Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus R Academy mencakup 4 pelajaran total.

print() — Fungsi Output Default

print() adalah metode default R untuk menampilkan objek. Fungsi ini menggunakan kelas objek untuk memilih metode pemformatan yang tepat. Dalam sesi interaktif, mengetik nama variabel setara dengan memanggil print() pada variabel tersebut.

x <- c(1, 2, 3, 4, 5)
print(x)
# Equivalent to:
x

cat() — Output Karakter Mentah

cat() menggabungkan dan mengeluarkan argumennya sebagai teks mentah, tanpa tanda kutip di sekelilingnya, tanpa penanda indeks seperti [1], dan secara default tanpa baris baru di akhir. Fungsi ini dirancang untuk output teks berformat, bukan untuk menampilkan objek R.

name <- 'Alice'
age  <- 30
cat('Name:', name, '\n')
cat('Age:', age, '\n')
cat('Score:', 92.5, '\n')

Perbedaan Utama: Tanda Kutip dan [1]

Perbedaan yang paling terlihat adalah cara string karakter ditampilkan. print() membungkus string dengan tanda kutip dan menambahkan [1]; cat() mengeluarkan karakter mentah tanpa hiasan apa pun.

msg <- 'Hello World'
print(msg)
cat(msg, '\n')

cat() dengan Argumen sep

cat() menerima argumen sep yang ditempatkan di antara setiap item output. Nilai defaultnya adalah satu spasi. Gunakan sep = '' tanpa pemisah, atau gunakan string lain untuk memformat output secara tepat.

cat('a', 'b', 'c', sep = '')
cat('a', 'b', 'c', sep = '-')
cat(1:5, sep = ', ')
cat('x =', 42, sep = '')

cat() dengan Argumen fill

Argumen fill menambahkan baris baru saat output melebihi lebar tertentu (dalam karakter). Menetapkan fill = TRUE akan menggunakan opsi width saat ini. Ini berguna untuk membungkus rangkaian kata yang panjang.

words <- c('The', 'quick', 'brown', 'fox', 'jumps',
           'over', 'the', 'lazy', 'dog')
cat(words, fill = 30)

Pemilihan Metode print()

print() adalah fungsi generik — fungsi ini memilih metode khusus berdasarkan kelas. Misalnya, print.data.frame memformat bingkai data dengan rapi, sedangkan print.factor menampilkan level, dan sebagainya. Inilah sebabnya pemanggilan yang sama tampak berbeda untuk objek yang berbeda.

# print dispatches differently per class
print(42L)                        # integer
print(factor(c('a', 'b', 'a')))   # factor with levels
print(list(x = 1, y = 'hi'))      # list

invisible() — Menonaktifkan Pencetakan Otomatis

invisible(x) mengembalikan argumennya, tetapi menonaktifkan pencetakan otomatis ketika suatu nilai dikembalikan dari fungsi atau ekspresi. Fungsi ini digunakan dalam fungsi yang mengembalikan nilai secara diam-diam, seperti operator penugasan.

# 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() — Ke stderr

message() menulis ke stderr, bukan ke stdout. Fungsi ini secara otomatis menambahkan baris baru. Berbeda dari cat() atau print(), pesan dapat disenyapkan dengan suppressMessages() dan ditangkap dengan tryCatch().

message('This goes to stderr')
cat('This goes to stdout\n')
# Suppress messages:
suppressMessages(message('hidden'))
cat('Still visible\n')

Kapan Menggunakan cat() dibandingkan print()

Gunakan cat() saat Anda ingin menghasilkan output teks yang mudah dibaca manusia — baris pencatatan, pesan kemajuan, atau laporan berformat. Gunakan print() saat Anda ingin memeriksa objek R secara akurat dengan mempertahankan informasi tipe dan strukturnya.

# 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() pada Bingkai Data

print.data.frame memformat bingkai data dengan nomor baris, judul kolom, dan nilai yang tersusun rapi. Anda dapat mengatur jumlah baris yang ditampilkan dengan gaya print(df, n = k) atau dengan menggunakan head() sebelum mencetak.

df <- data.frame(
  name  = c('Alice', 'Bob', 'Carol'),
  score = c(88, 95, 72)
)
print(df)

cat() untuk Kemajuan Perulangan

Salah satu penggunaan praktis cat() adalah mencetak kemajuan perulangan. Karena cat() tidak menambahkan baris baru secara otomatis, Anda dapat menyusun satu baris secara bertahap, lalu mengakhirinya dengan '\n'.

for (i in 1:5) {
  cat(sprintf('Processing file %d of 5...\n', i))
}
cat('All files processed.\n')

Pemeriksaan Singkat

Fungsi output manakah yang menulis ke stderr, secara otomatis menambahkan baris baru, dan dapat disenyapkan dengan suppressMessages()?

Fungsi Output: Inti Pembelajaran

Inti pembelajaran tentang fungsi output R:

  • print(x) — memeriksa objek R; menggunakan pemformatan khusus kelas; menambahkan [1] dan tanda kutip
  • cat(...) — output teks mentah; tanpa tanda kutip; tanpa baris baru otomatis; gunakan '\n' secara eksplisit
  • cat() menerima sep dan fill untuk mengendalikan pemformatan
  • invisible(x) — mengembalikan x tanpa pencetakan otomatis
  • message() — dikirim ke stderr; baris baru otomatis; disenyapkan oleh suppressMessages()
  • Gunakan cat()/sprintf() bersama-sama untuk laporan dan pencatatan berformat
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

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Menampilkan Output dengan cat() dan print()” gratis?

Ya — teks lengkap “Menampilkan Output dengan cat() dan print()” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus R Academy, upgrade ke CoddyKit PRO. Kursus R Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Menampilkan Output dengan cat() dan print()”?

Bedakan cat() untuk output konsol dan print() untuk objek. Kamu berlatih R Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai R Academy?

Tidak diperlukan pengalaman sebelumnya. R Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.

Berapa lama pelajaran “Menampilkan Output dengan cat() dan print()” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran R Academy ini?

Ya. Setiap pelajaran R Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Membangun String dengan paste() dan paste0()
  2. Output Terformat dengan sprintf()
  3. Menampilkan Output dengan cat() dan print()
  4. Pengisian dan Perataan String
← Kembali ke R Academy