# Top 50 Data Science R Interview Questions You Must Prepare 19.May.2024

Using in-built function - setdiff(c (1, 3, 5, 7, 10), c (1, 5, 10, 11, 13))

Without using in-built function - c (1, 3, 5, 7, 10) [! c (1, 3, 5, 7, 10) %in% c (1, 5, 10, 11, 13).

read.csv () function is used to read a .csv file in R language.

Below is a simple example –

filcontent

print (filecontent)

Data frames in R language can be merged manually using cbind () functions or by using the merge () function on common rows or columns.

The multiplication of the two vectors will be performed and the output will be displayed with a warning message like – “Longer object length is not a multiple of shorter object length.” Suppose there is a vector a<-c (1, 2, 3) and vector b <- (2, 3) then the multiplication of the vectors a*b will give the resultant as 2 6 6 with the warning message. The multiplication is performed in a sequential manner but since the length is not same, the first element of the smaller vector b will be multiplied with the last element of the larger vector a.

R Base package is the package that is loaded by default whenever R programming environent is loaded .R base package provides basic fucntionalites in R environment like arithmetic calcualtions, input/output.

Seq_along(6) will produce a vector with length 6 whereas seq(6) will produce a sequential vector from 1 to 6  c( (1,2,3,4,5,6)).

Logistic regression can be used for this and the function glm () in R language provides this functionality.

CRAN package ecosystem has more than 6000 packages. The best way for beginners to wer this question is to mention that they would look for a package that follows good software development principles. The next thing would be to look for user reviews and find out if other data scientists or analysts have been able to solve a similar problem.

save (x, file=”x.Rdata”)

mat<-matrix(rep(c(TRUE,FALSE),8),nrow=4)

sum(mat)

8

If two vectors with different lengths perform an operation –the elements of the shorter vector will be re-used to complete the operation. This is referred to as element recycling.

Example – Vector A <-c(1,2,0,4) and Vector B<-(3,6) then the result of A*B will be ( 3,12,0,24). Here 3 and 6 of vector B are repeated when computing the result.

A matrix of scatter plots can be produced using pairs. Pairs function takes various parameters like formula, data, subset, labels, etc.

The two key parameters required to build a scatter plot matrix are –

formula- A formula basically like ~a+b+c . Each term gives a separate variable in the pairs plots where the terms should be numerical vectors. It basically represents the series of variables used in pairs.

data- It basically represents the dataset from which the variables have to be taken for building a scatterplot.

If the programmers want the output to be a data frame or a vector, then sapply function is used whereas if a programmer wants the output to be a list then lapply is used. There one more function known as vapply which is preferred over sapply as vapply allows the programmer to specific the output type. The disadvantage of using vapply is that it is difficult to be implemented and more verbose.

Using the below line of code-

data(package = .packages(all.available = TRUE))

A factor variable can be converted to numeric using the as.numeric() function in R language. However, the variable first needs to be converted to character before being converted to numberic because the as.numeric() function in R does not return original values but returns the vector of the levels of the factor variable.

X <- factor(c(4, 5, 6, 6, 4))

X1 = as.numeric(as.character(X))

mean impute <- function(x) {x [is.na(x)] <- mean(x, na.rm = TRUE); x}

• Sample () function can be used to select a random sample of size ‘n’ from a huge dataset.
• Subset () function is used to select variables and observations from a given dataset.

NaN (Not a Number) is used to represent impossible values whereas NA (Not Available) is used to represent missing values. The best way to wer this question would be to mention that deleting missing values is not a good idea because the probable cause for missing value could be some problem with data collection or programming or the query. It is good to find the root cause of the missing values and then take necessary steps handle them.

The line of code in R language should begin with a hash symbol (#).

Coin package in R provides various options for re-randomization and permutations based on statistical tests. When test assumptions cannot be met then this package serves as the best alternative to classical methods as it does not assume random sampling from well-defined populations.

R Commander is used to import data in R language. To start the R commander GUI, the user must type in the command Rcmdr into the console. There are 3 different ways in which data can be imported in R language-

• Users can select the data set in the dialog box or enter the name of the data set (if they know).
• Data can also be entered directly using the editor of R Commander via Data->New Data Set. However, this works well when the data set is not too large.
• Data can also be imported from a URL or from a plain text file (ASCII), from any other statistical package or from the clipboard.

There is no real difference between the two if the packages are not being loaded inside the function. require () function is usually used inside function and throws a warning whenever a particular package is not found. On the flip side, library () function gives an error message if the desired package cannot be loaded.

There are various ways to do this-

• It can be done using the match () function- match () function returns the first appearance of a particular element.
• The other is to use %in% which returns a Boolean value either true or false.
• Is.element () function also returns a Boolean value either true or false based on whether it is present in a vector or not.

R code can be tested using Hadley’s testthat package.

Trpose t () is the easiest method for reshaping the data before analysis.

CRAN package repository in R has more than 6000 packages, so a data scientist needs to follow a well-defined process and criteria to select the right one for a specific task. When looking for a package in the CRAN repository a data scientist should list out all the requirements and issues so that an ideal R package can address all those needs and issues.

The best way to wer this question is to look for an R package that follows good software development principles and practices. For example, you might want to look at the quality documentation and unit tests. The next step is to check out how a particular R package is used and read the reviews posted by other users of the R package. It is important to know if other data scientists or data analysts have been able to solve a similar problem as that of yours. When you in doubt choosing a particular R package, I would always ask for feedback from R community members or other colleagues to ensure that I am making the right choice.

R language has Homogeneous and Heterogeneous data structures.

Homogeneous data structures have same type of objects – Vector, Matrix ad Array.

Heterogeneous data structures have different type of objects – Data frames and lists.

Scalars, Matrices ad Vectors.

8TB is the memory limit for 64-bit system memory and 3GB is the limit for 32-bit system memory.

Using the loglm () function

rbind () function can be used add datasets in R language provided the columns in the datasets should be same.

• Bucket Sort
• Selection Sort
• Quick Sort
• Bubble Sort
• Merge Sort

Emp_sal= 2000+2.5(emp_age)2

Yes it is a linear equation as the coefficients are linear.

K-Nearest Neighbour is one of the simplest machine learning classification algorithms that is a subset of supervised learning based on lazy learning. In this algorithm the function is approximated locally and any computations are deferred until classification.

unclass (as.Date (“2016-10-05″))

HDFS can be used for storing the data for long-term. MapReduce jobs submitted from either Oozie, Pig or Hive can be used to encode, improve and sample the data sets from HDFS into R. This helps to leverage complex analysis tasks on the subset of data prepared in R.

The current R working environment of a user that has user defined objects like lists, vectors, etc. is referred to as Workspace in R language.

boxplot () or text ()

A variable name in R programming language can contain numeric and alphabets along with special characters like dot (.) and underline (-). Variable names in R language can begin with an alphabet or the dot symbol. However, if the variable name begins with a dot symbol it should not be a followed by a numeric digit.

Factor variables are categorical variables that hold either string or numeric values. Factor variables are used in various types of graphics and particularly for statistical modelling where the correct number of degrees of freedom is assigned to them.

It will generate 7 random numbers between 0 and 1.

Merge () function is used to combine two dataframes and it identifies common rows or columns between the 2 dataframes. Merge () function basically finds the intersection between two different sets of data.

Merge () function in R language takes a long list of arguments as follows –

Syntax for using Merge function in R language -

merge (x, y, by.x, by.y, all.x  or all.y or all )

X represents the first dataframe.

Y represents the second dataframe.

by.X- Variable name in dataframe X that is common in Y.

by.Y- Variable name in dataframe Y that is common in X.

all.x - It is a logical value that specifies the type of merge. all.X should be set to true, if we want all the observations from dataframe X . This results in Left Join.

all.y - It is a logical value that specifies the type of merge. all.y should be set to true , if we want all the observations from dataframe Y . This results in Right Join.

all – The default value for this is set to FALSE which me that only matching rows are returned resulting in Inner join. This should be set to true if you want all the observations from dataframe X and Y resulting in Outer join.