R interviews are considered as highly technical and competitive between students. However, it is quite natural for those who are well aware of the concepts and know the tools that are associated with the R programming language. The following are the 50 top R interview questions that could help to brush your skills.

**Top R Interview Questions**

#### Question: Define R?

**Answer:** R is a programming language that can be used for making data visualization, statistical analysis, forecast analysis, data manipulation, and various other new age purposes. It is the most popular and widely used computer program language, which is used by Twitter, Google, and Facebook.

#### Question: How many structures are in the R programming language?

**Answer: **There are four structures in the R programming language, which include Vector, List, Matrix, and Dataframe.

#### Question: Define Vector in R?

**Answer: **A vector is a sequence of a variety of data elements of the same basic types. The members in vectors are called components.

#### Question: Define List in R?

**Answer: **The list is the object in R programming language, which consists of elements of different kinds such as vectors, strings, numbers, or another list.

#### Question: Define Matrix in R?

**Answer: **Matrix is a data structure in R programming language, which is two dimensional. They are used to bind vectors from the same length. It is required that all the elements in the matrix are of a similar type, such as character, numeric, logical, or complex.

#### Question: Define Dataframe in R?

**Answer: **The data frame combines features of lists and matrix to make a rectangular list and could have different columns and data numbers.

#### Question: Identify the different components of the grammar of graphics?

**Answer: **The different components of the grammar of graphics include,

- Themes layer
- Facet layer
- Data layer
- Aesthetics layer
- Geometry layer
- Coordinate layer

#### Question: Define Rmarkdown, and what is its purpose?

**Answer: **Rmarkdown is a tool of R programming language that is used for reporting. It can be used for creating high-quality reports of R code.

#### Question: What is the output format of Rmarkdwon?

**Answer:** The output format of Rmarkdown include,

- WORD
- HTML

#### Question: Identify different packages in the R programming language that can be used for data imputation?

**Answer:** The different packages in R programming language for data imputation include,

- ImputeR
- Mi
- Hmisc
- missForest
- MICE
- Amelia

#### Question: What is a confusion matrix?

**Answer:** A confusion matrix is used in the R programming language for evaluating the accuracy of the model built. It calculated the cross-tabulation of predicted classes and observed classes.

#### Question: Identify some functions in the “dplyr” package?

**Answer: **The different functions in dplyr package include,

- Count
- Arrange
- Filter
- Mutate
- Select

#### Question: What does the R6 object template consist of? Give an example?

**Answer: **R6 object template consists of Class name, Private Data members, and Public Member functions. For example:

- The class name can be “Employee.”
- Private data members can be “Employee name and designation”.
- Public member function can be “Set_name() and Set_designation()”

#### Question: Define Random forest?

**Answer:** Random forest is an ensemble classifier that is made using the decision tree models. It collects the outcomes from the various decision tree models and offers better results than another individual model.

#### Question: What is ShinyR?

**Answer: **ShinyR is an R programming package that helps in creating interactive web applications using the R language. This program helps in creating standalone applications on a webpage and even could embed them in Rmarkdown documents or build dashboards.

#### Question: Can we extend ShinyR?

**Answer: **Yes, we can extend ShinyR using JavaScript actions, Htmlwidgets, and CSS themes.

#### Question: What are the apply functions and their advantages?

**Answer: **The apply function supports making entry by entry changes in the data frames and matrices. Its advantage includes,

- Editing every entry of a data frame with a single command.
- No Waste CPU cycles.
- No Auto-filling.

#### Question: Identify different packages used for data mining in R and their usage?

**Answer:** The different packages used for data mining in R include,

- Tm-: It helps to perform data mining.
- Data.table: It supports faster reading of larger files.
- GGplot: It offers various kinds of data visualization plots.
- Arules: It helps in associating with rule learning.
- Forecast: It offers functions for time series analysis.

#### Question: Define clustering?

**Answer: **Clustering is a grouping of objects which belong to the same class. It is a process of making a group of abstract objects in a different class with similar objects.

#### Question: Why do we need clustering?

**Answer: **We need clustering because

- To deal with the large databases which need highly scalable clustering algorithms.
- To deal with different kinds of attributes, including the algorithms that are capable of being applied to any kind of data, including binary data, categorical, and interval based numerical data.
- To discover different clusters with attribute shape which are capable of detecting clusters that are not bound by distance measures.
- To cover a sizable dimensional space.
- To deal with noisy, missing, erroneous data that lead to sparse quality clusters.
- To increase interpretability, usability, and comprehensibility.

#### Question: Define K Means clustering?

**Answer: **Kmeans clustering is a partitioning method in which the objects are classified as belonging to one of K-groups. As a result, the partition is made between different sets of K clusters, each object of data set belonging to one cluster.

#### Question: Define hierarchical clustering?

**Answer:** Hierarchical clustering supports the hierarchical decomposition of the given set of data objects, which can be classified based on hierarchical decomposition.

#### Question: Identify the approaches to hierarchical clustering?

**Answer:** The two approaches to hierarchical clustering include,

- Agglomerative approach
- Divisive approach

#### Question: Define the Agglomerative approach?

**Answer: **The agglomerative approach or bottom-up approach starts by defining each object into a separate group. It helps in merging the different groups of objects which are closer to one another. This action continues until the groups are merged into one or until the final termination conditions hold.

#### Question: Define the Divisive approach?

**Answer:** The divisive approach or top-down approach starts by defining each object in the same cluster. It is a continuous process under which a cluster is split into different smaller clusters. The action continues until each object in one cluster is down, or termination condition holds.

#### Question: Define Rattle package in R?

**Answer:** Rattle package in the R programming language is used for the data mining process. It is popularly known as GUI. It helps in presenting the statistical and visual summaries of the data inputs and transforms them into a more readily modeled graphical representation of the outcomes. It supports your interactions using the graphical user interface or GUI by capturing as an R script, which can be readily executed in R programming language, independently on the Rattle interface.

#### Question: Define the White Noise Model?

**Answer: **White noise or WN model is a time series model. It supports the stationary process in the R language.

#### Question: What are the key features of the WN model?

**Answer:** The key features of WN or White Noise model include,

- Fixed constant mean.
- Fixed constant variance.
- No correlation.

#### Question: Define Random Walk or RW model in R programming language? What are its features?

**Answer:** The RW model or Random Walk model is a non-stationary process. Its features include,

- No specific mean or variance.
- Changes or increments are white noise.
- Strong dependence.

#### Question: Define Principal Component Analysis?

**Answer:** Principal Component Analysis or PCA, is a method that helps in dimensionality reduction. It has been observed that one observation can be related to different dimensions at one point in time, and this could create a chaotic situation. PCA helps in reducing the number of dimensions to control the situation.

#### Question: What are the benefits of PCA?

**Answer: **The different benefits of PCA include,

- The data is transformed into a new space having lesser or same dimensions, which are called principal components.
- The first component carries the maximum amount of variance from the features in the original data.
- The second component carries the orthogonal to the first and maximum variability, which is left.
- Each component is made uncorrelated

#### Question: What is an “initialize()” function in R?

**Answer: **An “initialize()” function in R is used to initialize the private data members by declaring the object.

#### Question: Can we fit a linear model over a scatter-plot?

**Answer: **Yes, we can fit a linear model over a scatter-plot by using the “ggplot2” package. The scatter plot can be made by using geom_point() function, and on top of it we can make a layer of the linear model by adding the geom_smooth()

#### Question: What is a “predict()” function?

**Answer: **The “predict()” function is used to predict the values of the built model.

Is there any difference between “this” and “predict” function?

Yes, there is a difference of automatically selecting more sensible values in “this” than in the “predict” function.

#### Question: What is the critical difference between a bar chart and a histogram?

**Answer: **The critical difference between the bar chart and histogram is that the prior is used to plot the distribution of a categorical variable while the latter is used to plot the distribution of a continuous variable.

#### Question: Can we do a left and right join R?

**Answer:** Yes, we can do left and right join in R programming language using the “dplyr” package.

#### Question: Define a factor in R?

**Answer:** A Factor in R programming language represents the variables that take on a limited number of different values. These variables are referred to as categorical variables.

#### Question: What is the use of Factors in R?

**Answer: **The use of Factors in R include,

- It supports statistical modeling.
- It helps in treating data correctly.
- It helps in storing data as factors ensuring the modeling functions.

#### Question: Can we convert a vector into values of scientific notation?

**Answer: **Yes, we can convert a vector into the values of the scientific notation bus using the “format()” function.

#### Question: Can we join multiple strings together?

**Answer: **Yes, we can join multiple strings together by either using the “paste()” function or “string_c()” function from the StringR package.

#### Question: Identify the functions that can be used for debugging in the R?

**Answer: **Different functions that can be used for debugging in the R programming language include,

- recover()
- traceback()
- trace()
- debug()
- browser()

#### Question: How can we rename the columns of a data frame?

**Answer:** We can rename the columns of a data frame by using the “colnames()” function so that the right information about the present value in the column can be conveyed.

#### Question: Define correlation?

**Answer: **Correlation is a statistical tool that is used to find out the strength of the association between the two variables.

#### Question: How can we find a correlation in R?

**Answer: **Correlation can be found in the R programming language by using the “Cor()” function, which will help in finding out the correlation coefficient.

#### Question: What is the positive and negative correlation?

**Answer:** A positive correlation is considered when the correlation coefficient is higher than zero. When it is near to +1, then it is considered that there exists a higher positive relation between the variables. On the other hand, a negative correlation is considered when the correlation coefficient is lower than zero. When it is near to -1, then it is considered that there exists no or negative relationship between the variables.

#### Question: Can we extract one particular word from a string?

**Answer: **Yes, we can extract one particular word from a string using the “String_extract_all()” function from the “stringR” package.

#### Question: Which function supports data manipulation in R?

**Answer:** Data manipulation in R programming language can be done by using the “dplyr” package, which provides many functions for data manipulation, including filter().

#### Question: Can we add a date in the data?

**Answer: **Yes, we can add a date in the data using the “cbind()” function.

#### Question: Can we do a cross product of two tables in R?

**Answer: **Yes, we can do the cross product of two tables in R programming language using the “merge()” function.

## Summary

After going through the above 50 questions, you will be more confident and clear about the concepts. These questions are straightforward and need replies in yes or no, along with some explanations. Therefore it is suggested to be very clear with the concepts and tools so that these clear and concise answers could easily depict your grasp over R programming language and knowledge of using various tools and techniques.