टिबबल की सभी पंक्तियों को प्रदर्शित / प्रिंट करें (tbl_df)


192

tibble(पहले tbl_df) dplyrआर में डेटा फ़्रेम हेरफेर पैकेज द्वारा बनाई गई डेटा फ़्रेम का एक संस्करण है। यह गलती से डेटा फ़्रेम को कॉल करते समय लंबी तालिका आउटपुट को रोकता है।

एक बार एक डेटा फ़्रेम को tibble/ द्वारा लपेटा जाने के बाद tbl_df, क्या पूरे डेटा फ़्रेम को देखने के लिए एक कमांड है (हालांकि डेटा फ़्रेम की सभी पंक्तियाँ और कॉलम)?

यदि मैं उपयोग करता हूं df[1:100,], तो मैं सभी 100 पंक्तियों को देखूंगा, लेकिन यदि मैं उपयोग करता हूं df[1:101,], तो यह केवल पहली 10 पंक्तियों को प्रदर्शित करेगा। मैं आसानी से उनके माध्यम से स्क्रॉल करने के लिए सभी पंक्तियों को आसानी से प्रदर्शित करना चाहूंगा।

क्या इस पर नक़ल करने के लिए या तो एक dplyr कमांड है या डेटा फ़्रेम को अनफ्रैप करने का कोई तरीका है?


4
View"tbl_df"वस्तुओं के साथ अपरिवर्तित है।
जी। ग्रोथेंडिक

10
@ G.Grothendieck देखना मुद्रण से अलग है।
मेग

जवाबों:


229

आप भी इस्तेमाल कर सकते हैं

print(tbl_df(df), n=40)

या पाइप ऑपरेटर की मदद से

df %>% tbl_df %>% print(n=40)

निर्दिष्ट करने के लिए सभी पंक्तियों को मुद्रित करने के लिए tbl_df %>% print(n = Inf)


28
यदि आप करते हैं के मूल्य के बारे में चिंता करना चाहते हैं नहीं करना चाहता nऔर आप पहले से ही पाइप रहे हैं, आप उपयोग कर सकते हैंdf %>% tbl_df %>% print(n = nrow(.))
ClaytonJY

18
@ BLT के उत्तर का विस्तार करते हुए, आप n = Infसभी पंक्तियों को प्रिंट करने के लिए सेट कर सकते हैं।
21

10
print(एक Tibble के साथ) भी है width = और n_extra = विकल्प है कि कितने कॉलम मुद्रित कर रहे हैं, या तो सीधे या परोक्ष रूप से नियंत्रित करने के लिए।
झै जांग

3
@ClaytonJY मैंने इसके tbl_df %>% print(n = Inf)लिए काम करना भी पाया है।
डेनिवड

क्या किसी को पता नहीं है कि print(n = ...)टिबबल डिस्प्ले में वैज्ञानिक अंकन क्यों होता है?
एजिल बीन

87

आप उपयोग कर सकते हैं as.data.frameया print.data.frame

यदि आप चाहते हैं कि यह डिफ़ॉल्ट हो, तो आप dplyr.print_maxविकल्प का मान बदल सकते हैं ।

options(dplyr.print_max = 1e9)

66

Tibble शब्दचित्र उसके डिफ़ॉल्ट मुद्रण व्यवहार बदलने के लिए एक अद्यतन तरीका होता है:

आप विकल्पों के साथ डिफ़ॉल्ट उपस्थिति को नियंत्रित कर सकते हैं:

options(tibble.print_max = n, tibble.print_min = m): यदि n पंक्तियों से अधिक हैं, तो केवल पहली m पंक्तियों को प्रिंट करें। options(tibble.print_max = Inf)हमेशा सभी पंक्तियों को दिखाने के लिए उपयोग करें ।

options(tibble.width = Inf) हमेशा स्क्रीन की चौड़ाई की परवाह किए बिना सभी कॉलम प्रिंट करेंगे।

उदाहरण

यह हमेशा सभी पंक्तियों को मुद्रित करेगा:

options(tibble.print_max = Inf)

यह वास्तव में मुद्रण को 50 लाइनों तक सीमित नहीं करेगा:

options(tibble.print_max = 50)

लेकिन यह प्रिंटिंग को 50 लाइनों तक सीमित कर देगा:

options(tibble.print_max = 50, tibble.print_min = 50)

1
यह सभी टिबल्स के लिए डिफ़ॉल्ट व्यवहार को बदल देगा। मैं डिफ़ॉल्ट बाधा को ओवरराइड करने का एक रास्ता खोज रहा था। print(n=100)मैं जो चाहता हूं वह करता हूं। ( count()उदाहरण के लिए, सारांश सारणी को उनकी संपूर्णता में प्रदर्शित किया जाना चाहिए, जबकि मैं चाहता हूं कि मेरे डेटा तालिकाओं को काट दिया जाए।)
Dannid

2
@dannid ऐसा लगता है जैसे आप स्वीकृत उत्तर चाहते हैं, फिर।
BLT

5

जैसा कि बुकडाउन डॉक्यूमेंटेशन में विस्तृत है , आप एक पेजर टेबल का भी उपयोग कर सकते हैं

mtcars %>% tbl_df %>% rmarkdown::paged_table()

यह डेटा को गति देगा और सभी पंक्तियों और स्तंभों को ब्राउज़ करने की अनुमति देगा (जब तक कि पंक्तियों को कैप करने के लिए कॉन्फ़िगर नहीं किया जाता है)। उदाहरण:

यहां छवि विवरण दर्ज करें


1
जैसा कि उस प्रलेखन में वर्णित है: यदि आर नोटबुक में एक कोड चंक द्वारा पृष्ठांकित तालिका बनाई गई है, तो आप rows.print=[n]प्रति पृष्ठ प्रदर्शित पंक्तियों की संख्या को नियंत्रित करने के लिए पैरामीटर को चंक विकल्पों में जोड़ सकते हैं ।
आर्थर स्मॉल

0

मैं डेटा के लिए स्पर्श को चालू करना पसंद करता हूं। यह सब कुछ दिखाता है और आपका काम हो गया है

df %>% data.frame 
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.