(R Example for Citizen Data Scientist & Business Analyst)
readinteger <- function() { n <- readline(prompt="Enter an integer: ") return(as.integer(n)) } print(readinteger())
Enter an integer: 88 [1] 88
The readline function
readline() lets the user enter a one-line string at the terminal.
The prompt argument is printed in front of the user input. It usually ends on “: “.
The as.integer function
as.integer makes an integer out of the string.
Preventing failure if no number is entered
Right now if the user doesn’t enter an integer, as.integer will return NA (Not Available). We can avoid this by using is.na to check the user input and asking again if the value is NA:
readinteger <- function() { n <- readline(prompt="Enter an integer: ") n <- as.integer(n) if (is.na(n)){ n <- readinteger() } return(n) } print(readinteger())
Enter an integer: Enter an integer: boo Enter an integer: 44 [1] 44 Warning message: In readinteger() : NAs introduced by coercion
However, a warning message is still shown. This is how to avoid it:
readinteger <- function() { n <- readline(prompt="Enter an integer: ") if(!grepl("^[0-9]+$",n)) { return(readinteger()) } return(as.integer(n)) } print(readinteger())
Enter an integer: Enter an integer: 31r132weq Enter an integer: effasdf Enter an integer: 222 [1] 222
grepl returns TRUE if the regular expression “^[0-9]+$” is matched. (The expression checks for a string that consists of nothing but one or more digits.)
! negates the result and the if branch is executed if the user-entered string isn’t an integer.
Python tutorials for Business Analyst – Python Input, Output and Import
R Examples for Beginners – R User Input
Disclaimer: The information and code presented within this recipe/tutorial is only for educational and coaching purposes for beginners and developers. Anyone can practice and apply the recipe/tutorial presented here, but the reader is taking full responsibility for his/her actions. The author (content curator) of this recipe (code / program) has made every effort to ensure the accuracy of the information was correct at time of publication. The author (content curator) does not assume and hereby disclaims any liability to any party for any loss, damage, or disruption caused by errors or omissions, whether such errors or omissions result from accident, negligence, or any other cause. The information presented here could also be found in public knowledge domains.
Learn by Coding: v-Tutorials on Applied Machine Learning and Data Science for Beginners
Latest end-to-end Learn by Coding Projects (Jupyter Notebooks) in Python and R:
All Notebooks in One Bundle: Data Science Recipes and Examples in Python & R.
End-to-End Python Machine Learning Recipes & Examples.
End-to-End R Machine Learning Recipes & Examples.
Applied Statistics with R for Beginners and Business Professionals
Data Science and Machine Learning Projects in Python: Tabular Data Analytics
Data Science and Machine Learning Projects in R: Tabular Data Analytics
Python Machine Learning & Data Science Recipes: Learn by Coding
R Machine Learning & Data Science Recipes: Learn by Coding
Comparing Different Machine Learning Algorithms in Python for Classification (FREE)
There are 2000+ End-to-End Python & R Notebooks are available to build Professional Portfolio as a Data Scientist and/or Machine Learning Specialist. All Notebooks are only $29.95. We would like to request you to have a look at the website for FREE the end-to-end notebooks, and then decide whether you would like to purchase or not.