R Academy · पाठ

cat() और print() से आउटपुट दिखाना

कंसोल आउटपुट के लिए cat() और ऑब्जेक्ट के लिए print() के बीच अंतर समझें।

पाठ 3, कुल 4 में से13 चरण

cat() और print() से आउटपुट दिखाना, CoddyKit पर R Academy का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह R Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। R Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

print() — डिफ़ॉल्ट आउटपुट फ़ंक्शन

print() R में ऑब्जेक्ट प्रदर्शित करने की डिफ़ॉल्ट विधि है। यह सही फ़ॉर्मैटिंग विधि चुनने के लिए ऑब्जेक्ट की क्लास का उपयोग करती है। इंटरैक्टिव सत्रों में किसी चर का नाम टाइप करना, उस पर print() कॉल करने के बराबर होता है।

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

cat() — कच्चा कैरेक्टर आउटपुट

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'))      # list

invisible() — स्वचालित प्रिंट रोकना

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
शुरुआत निःशुल्क

एआई शिक्षक के साथ R सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
43
पाठ
159

अक्सर पूछे जाने वाले प्रश्न

क्या “cat() और print() से आउटपुट दिखाना” पाठ निःशुल्क है?

हाँ — R Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “cat() और print() से आउटपुट दिखाना” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। R Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“cat() और print() से आउटपुट दिखाना” में मैं क्या सीखूँगा?

कंसोल आउटपुट के लिए cat() और ऑब्जेक्ट के लिए print() के बीच अंतर समझें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ R Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या R Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर R Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।

“cat() और print() से आउटपुट दिखाना” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस R Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर R Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. paste() और paste0() से स्ट्रिंग बनाना
  2. sprintf() से फ़ॉर्मैट किया गया आउटपुट
  3. cat() और print() से आउटपुट दिखाना
  4. स्ट्रिंग पैडिंग और संरेखण
← R Academy पर वापस जाएँ