2010-03-29 7 views
5

उदाहरण के लिए, अगर मैं की जरूरत है कि उपयोगकर्ता पंक्तियों और एक मैट्रिक्स के स्तंभों की संख्या निर्दिष्ट करता है:आर का उपयोग कर उपयोगकर्ता से एकाधिक इनपुट कैसे अनुमति दें?

आदेश: [एक नंबर]

मैं की जरूरत है: पंक्तियों ?:

उपयोगकर्ता इनपुट की संख्या कि इनपुट के लिए आर 'इंतजार' है। फिर [एक संख्या] एक चर v1 में सहेजें। इसके बाद,

आदेश: स्तंभों की संख्या ?:

उपयोगकर्ता इनपुट: [एक और नंबर]

भी [एक और नंबर] को बचाने एक चर वी 2 में। अंत में, मेरे पास दो चर (v1, v2) होंगे जो शेष कोड में उपयोग किए जाएंगे।

"रीडलाइन" केवल एक समय में एक इनपुट के लिए काम करता है। मैं दो लाइनों को एक साथ नहीं चला सकता

v1 <- readline("Number of rows?: ") 
v2 <- readline("Number of columns?: ") 

कोई विचार या सुझाव?

अग्रिम धन्यवाद

उत्तर

5

आप एक खंड में उन कथनों को संयोजित कर सकते हैं: एक समारोह में,

{ v1 <- readline("Number of rows?: "); v2 <- readline("Number of columns?: ") } 

या आम तौर पर उन्हें बनाने:

readlines <- function(...) { 
    lapply(list(...), readline) 
} 
readlines("Number of rows?: ", "Number of columns?: ") 
4

आप उपयोगी लग सकती tkentry पैकेज tcltk में फ़ंक्शन (अधिक उदाहरणों के लिए here देखें)। वहाँ भी है पैकेज svDialogs में एक guiDlg समारोह

library(svDialogs) 
display(guiDlg("SciViews-R", "My first dialog box with SciViews-R")) 

अधिक के लिए चेक this page ..