最热门的R语言常见面试问题和答案合集

2021年11月28日19:44:46 发表评论 503 次浏览
R语言常见面试题有哪些

R 编程语言用于统计分析、图形表示和报告。R 在 GNU 通用公共许可证 (GNU GPL) 下免费提供。 GNU GPL 允许最终用户使用该软件并自由运行、共享和使用该软件。R编程语言用于回归分析、预测建模、概率估计、数据挖掘等领域,进一步有助于数据分析。这篇文章将使你可以使用下面列出的最佳R 面试问题和答案为即将到来的 R 面试做准备

热门的R语言面试问题和答案合集

R编程语言的特点:

  1. R 用于处理大量数据和存储设施。
  2. R 在处理数据的统计分析和图形表示时很方便。
  3. R 提供了大量的运算符来执行对数组、列表、向量和度量的计算。

以下是 R 面试问题列表,可帮助你准备面试并在数据科学领域找到工作。

问题: R 中的数据结构是什么,它有助于统计分析和图形表示?

答:以下是R中广泛使用的数据结构:

  1. Array
  2. 矩阵
  3. 向量
  4. 数据框
  5. 列表

问题:如何在 R 中打印一些东西?<R基本语法练习>

答:为了写东西,R 使用了打印命令。

>string_variable_name <- “R is an analytical language”
>print(string_variable_name)

问题:什么是 class() 函数 R?

答: R 中的这个函数是一个字符向量,给出对象继承的类的名称。

例子:

>x <- 1:10
>class(x)
[1] “integer”

问题:什么是向量?

答案:向量是具有相同主要类型的数据元素的序列。向量中的成员称为组件。

例子。

>vector_example <- c(2,3,4,5)
> print(vector_example)
[1] 2,3,4,5
>print (length(vector_example)
[1] 4

问题:如何对向量进行算术运算?举例说明

R语言面试题解析 R 中使用了许多算术运算符。请记住,R 使用一个组件一个组件的运算符。让我们用一些标准运算符来看看它。

>x <- c(1,2,3,4)
> y <- c(4,5,6,7)
> x+y
[1] 5 7 9 11
> x-y
[1] -3 -3 -3 -3
> z <- (4,4,4,4,4,4,4)
> x+z
[1] 5 6 7 8 5 6 7

当我们有两个长度不等的向量,并且我们需要对两者进行操作时,那么较短的向量会一次又一次地用于匹配两个向量的长度。

问题:R语言常见面试题有哪些 - 在 Vector 中定义索引。

答:向量中的索引用于给出向量该位置处的元素。很少有编程语言从0开始索引,其他从1开始。R从1开始计算索引。同时放置索引号有很多可能性,即

1. 正指数和区间指数

> x<- (1,3,4,5)
> x[2]
[1] “3”

2. 超出范围

>x <- (2,3,4,5)
> x[110]
[1] NA

3. 负索引 - 删除此元素并回复所有左边的数字。

> x <- (3,4,5,6,7)
> x[-3]
[1] “3” “4” “6” “7”

4. 数值范围

>x <- (3,4,5,6,7,8)
> x[2:5]
[1] “4” “5” “6” “7”

5. 重复索引

>x <- (3,4,5,6,7)
>s[c(2,1,2,3)]
[1] “4” “3” “4” “5”

6. 逻辑索引

如果我们想选择一个特定的一组索引号,那么你应该使用逻辑运算符,即 TRUE 和 FALSE

> x <- (2,3,4,5,6)
> s[c(TRUE, FALSE, FALSE, TRUE, TRUE)
[1] “2” “5” “6”

问题:什么是列表?

答:R语言面试问题和答案合集 - 列表,顾名思义,就是将几个向量集合在一起。假设你有一个数值向量、一个字符向量、一个布尔向量和一些数字。我们想把它合二为一,这显然不会有相同的数据类型。所以我们需要创建一个列表。

> n = c(2,3,5)
> s = c (“a”, “b”, “c”, “d”, “e”)
> b= c(TRUE, FALSE, TRUE, FALSE, FALSE)
> x = list (n, s, b, 3)
> print(x)
[[1]]
[1] 2 3 5
[[2]]
[1] “a” “b” “c” “d” “e”
[[3]]
[1] TRUE FALSE TRUE FALSE FALSE
[[4]]
[1] 3

问题:什么是矩阵?

答:矩阵是二维矩形数据集。它可以使用矩阵函数的向量输入来创建。

例子。

# Matrix creation
> M = matrix(c(1,2,3,4,5,6), nrow=2, ncol=3, by-row =TRUE)
print(M)
[1] [2] [3]
[1] 1 2 3
[1] 4 5 6
Where
nrow = number of rows in the matrix
ncol = number of columns in the matrix
byrow = TRUE/FALSE will get value first by row or column.

问题:什么是数组?

R语言面试题解析数组是矩阵的超集。一方面,矩阵可以是二维的,但数组可以是任意维数。

例子。

> a<- array(c(“car”, “bike”), dim (3,3,2))
> print (a)
, , 1
[,1] [,2] [,3]
[1,] “car” “bike” “car”
[2,] “bike” “car” “bike”
[3,] “car” “bike” “car”
, , 2
[,1] [,2] [,3]
[1,] “bike” “car” “bike”
[2,] “car” “bike” “car”
[3,] “bike” “car” “bike”
>my_array <- array(1:24, dim = c(3,4,2))
< my_array
, , 1
[,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
, , 2
[,1] [,2] [,3] [,4]
[1,] 13 16 19 22
[2,] 14 17 20 23
[3,] 15 18 21 24

问题:是什么因素?

答案:因子是使用向量创建的 r 对象。R 中的因子存储为整数值向量,其中包含一组相应的字符值,以便在显示因子时使用。因子函数用于创建因子。factor 唯一需要的参数是一个向量值,它将作为因子值的向量返回。它将向量与向量标签中元素的不同值一起存储。

因子是使用 factor() 函数创建的。nlevels 函数给出了级别的计数。

例子。

#First let’s create a vector
>vector_example <- c(‘a’, ‘b’, ‘c’, ‘a’, ‘a’)
#Now create a factor object
>factor_example <- factor(vector_example)
>print(factor_example)
[1] a b c a a
>print(nlevels(factor_example))
[1] 3

nlevels 为你提供向量中不同值的数量。

问题:矩阵和数组有什么区别?

答:矩阵只能有两个维度,而数组可以有任意多的维度。矩阵是在数据、行数、列数以及元素是按行还是按列放置的帮助下定义的。

在数组中,你需要给出数组的维度。数组可以是任意维数,每一维都是一个矩阵。例如,一个 3x3x2 数组表示两个矩阵,每个矩阵的维度为 3x3。

问题:什么是数据框?

答:该数据帧是相等长度的向量的列表。它可以由具有特定类型的任何向量组成,并且可以将其合并为一个。因此,一个数据框可以有一个逻辑向量和另一个数字向量。唯一的条件是所有向量都应该具有相同的长度。

例子。

#This is how the data frame is created
> student_profile <- data.frame(
Name <-c(“Ray”, “Green”, “Justin”)
Age <- c(22,23,24)
Class <- c(6,7,8)
)
print(stuent_profile)

上面的代码将创建三个列,列名称为 name、age 和 class。

问题:矩阵和数据框有什么区别?

答:数据框可以包含具有不同输入的向量,而矩阵不能。我们可以有一个包含字符、整数甚至其他数据框的数据框,但是你不能用矩阵来做到这一点,因为矩阵必须都是相同的类型。

因此,数据框可以具有不同的字符、数字和逻辑向量。

但是,对于矩阵,我们只需要一种数据类型。

问题:如何在 R 中读取用户的输入?

回答:

Readinteger <- function()
{
n <- readline(prompt = “Enter an integer: “)
return(as.integer(n))
}
print(readinteger())

Readline 允许用户在 R 中输入一行字符串。

prompt 参数打印在用户的屏幕上。

问题:写一个函数来求一个数的平方

回答:

Square <- function(x) {
return(x^2)
}
print(Square(4))

问题:用 R 写一个倒计时函数?

回答:

timer <- function(time)
{
print(time)
while(time!-0)
{
Sys.sleep(!)
Time <- time -1
print(time)
}
}
countdown(5)
[1] 5
[2] 4
[3] 3
[2] 2
[1] 1

问题:如何在 R 中使用模式函数?

答:R语言常见面试题有哪些 - 众数是一组数据中出现次数最多的值。与均值和中位数不同,众数可以同时包含数字和字符数据。

R 没有标准的内置函数来计算模式。因此,我们创建了一个用户函数来计算 R 中数据集的众数。该函数将向量作为输入并给出众数作为输出。

例子。

#Create the function
getmode <- function(v){
uniqv <- unique(v)
uniqv[which.max(tabulate(match(v,uniqv)))]
}
#Create the vector with numbers.
v <- c(2,1,2,3,1,2,3,4,1,5,5,3,2,3)
#Calculate the mode using the user function
result <- getmode(v)
print(result)
[1] 2
#Create the vector with characters
charv <- c(“o”, “it”, “the”, “it”, “it”)
#Calculate the mode using the user function.
result <- getmode(charv)
print(result)
[1] “it”

问题:登记功能有什么作用?

答案:它将列表转换为向量

问题: R 中的 apply 函数是什么?

答: apply(),它的家族是R中最常用的函数之一。当我们想对矩阵的行或列应用一个函数时,我们使用apply。

例子:

M<- matrix(seq(1,16),4,4)
apply (M,1,min)
[1] 1 2 3 4

问题: R 中的 lapply() 函数是什么?

答: lapply() 函数用于当我们想对每个函数应用一个函数时

问题: lapply 和 sapply 的区别

答:R语言面试问题和答案合集 - 如果程序员希望输出是数据帧或向量,则使用 sapply 函数,而如果程序员希望输出是列表,则使用 lapply 。

问题:如何在 R 中安装新包?

答:我们需要知道包的名称

句法:

install.packages(“name_of_package”)

问题: merge() 函数的作用是什么?

答:我们可以使用合并函数()合并两个数据框。数据框必须具有与发生合并相同的列名。

例子。

df1 <- data.frame(id <- c(1:6), name <-c(rep(“Amit”,3), rep(“Sumit”,3))
df2 < - data.frame(id <- c(7,8,9), name <- c(rep(“Nitin”,2),rep(“Paplu”,1))
*outer join
merge(x=df1, y= df2, by =”id”, all TRUE)

这 all = TRUE 将为你提供外连接,因此新数据集将具有合并在 id 上的两个数据帧的所有值。

问题:什么是数据清洗?

答:数据清理是分析中的一个过程,涉及删除或修改数据库中不正确、不完整、格式不正确或重复的数据。

问题:什么是数据重塑?

R语言面试题解析:有时,我们需要特定格式的数据。最初,我们从数据框中的特定 .csv 文件或 txt 文件导入数据。但是,大多数时候我们还需要一个不同于初始数据集的数据集,另外我们还需要添加列或列的位置。所以所有这些都是数据重塑,你可以根据需要给出初始数据框的形状。

问题:在 R 中编写一个函数将两个数字相加

回答:

add <- function(a,b)
{
c <- a+b
print(c)
}

问题:如何从命令行关闭 R?

答案:使用函数 q()

问题:如何读取 R 中的 csv_input 文件?

回答:

data <- read.csv(“csv_input.csv”)

问题:解释一下 R 中扫描函数的使用。

答: scan() 函数用于读取各种类型的数据或数据对象,例如数据向量。可以自定义该命令以读取特定数据。该命令等待来自数据的输入,然后返回在提示符处输入的值。

问题:在 R 编程语言中使用哪些不同的文件格式?

回答:

  1. .RDA 文件格式:这些是用于在 R 中附加和加载文件的 R 对象。
  2. .Rfiles:这些是由转储函数在 R 编辑器中创建的文件。
  3. .txt 文件:.txt 文件用于存储数据集。R 使用 read.table() 和 write.table() 函数。
  4. .csv 文件:逗号分隔值文件是常见的数据文件。

问题: od summary() 函数是什么函数?

答: summary() 是一个重要的命令,可以帮助我们获取数据的统计摘要。它包含所有统计数据,如均值、中值、最小值、最大值、第一四分位数和第三四分位数。

问题:如何在 R 中添加数据集?

答: rbind() 函数可用于添加 R 语言中的数据集,前提是数据集中的列应该相同。

问题: R语言中的因子变量有哪些?

答案:因子变量是包含字符串或数值的分类变量。因子变量用于各种类型的图形,特别是用于统计建模,其中分配了正确的自由度数。

问题: R 中的 seq() 函数有什么用?

答: R 中的 seq() 函数用于为用户提供一个数字序列。如果我们需要一个具有特定步骤的数字序列,即 4,8,12,16,那么我们需要提供另一个属性“by = ?” 这将提供步骤。

例子。

> print(seq(5,11, by = 2))

[1] 5,7,9,11

问题:定义重复循环

答案:重复循环多次执行一系列语句。它不会将条件放在我们放置关键字重复的同一位置。

例子。

>name <-c(“Parry”,”John”)
>temp <-5
> repeat {
print(name)
temp <- temp +2
if(temp >11){
Break
}
}

这将返回名称向量四次。首先,它打印名称并将温度增加到 7,依此类推。

问题:如何在 R 中进行决策?

答: R 中的决策执行方式与其他语言中的执行方式相同。三个主要的决策声明包含:

  1. 如果语句
  2. If.else 语句
  3. 开关语句

问题:存在两个向量,a <- (3,4,5) 和 b <- (1,2),那么 c <- a * b 的输出是什么?

答案: c<- (3,8,5)

问题: R 中有哪些二元函数可以应用二元运算符?

答案:标量、矩阵和向量

问题:数据框的主要特征是什么?

答:R语言面试问题和答案合集- 主要有以下几个特点:

  1. 行名称应该是唯一的。
  2. 列名不能为空
  3. 数据框中存储的数据仅支持三种类型,即数字、因子和字符。
  4. 每列应具有相同数量的数据项。这是数据框的主要规则之一。

问题:解释R中字符串函数的使用

答: R 中的 str() 函数用于获取数据框的结构以及前几个观察结果。假设一个数据框有四个变量,每个变量有三个值。然后这个函数的输出将是这样的:

‘data.frame’: 3 obs. And 4 variable
$name: chr “Nitin” “Kamal” “Xtramous”
$age : int 16 18 20
$class: int 6 8 10

问题: seq(4) 和 seq_along(4) 有什么区别

答案: seq(4) 产生一个从 1 到 4 (c(1,2,3,4)) 的向量,而 seq_along(4) 产生一个长度为 (4) 或 1(c(1)) 的向量。

问题:如何在 R 中读取 .csv 文件?

答: read.csv() 函数用于从当前工作目录读取 CSV(逗号分隔值)。

例子。

data_store<- read.csv(“abc.csv”)
print(data_store)

问题:获取工资最高的人的所有数据。

回答:

max_salary_person <- subset(data,
salary == max(salary))
print(max_salary_person)

问题:如何获得外连接、左连接、右连接、内连接和交叉连接?

回答:

outer join - merge (x= df1, y=df2, by= “id”, all= TRUE)
left join - merge (x= df1, y= df2, by = “id”, all.x = TRUE)
right join - merge (x= df1, y= df2, by = “id”, all.y = TRUE)
inner join - merge (x= df1, y= df2, by = “id”)
cross join - merge (x= df1, y= df2, by = NULL)

问题:你说的铸造是什么意思?cast() 函数有什么用?

答:R语言常见面试题有哪些 - 用于在melt()之后得到聚合体。所以,现在我们已经按某种顺序排列了数据,如果我们想聚合具有相似 company_name 和 age 的列,那么我们应该使用 cast() 函数。

例子。

Casted_data_set <- cast(new_data_set, company_name+age ~ variable, sum)

该函数给出了具有相同公司和年龄的儿童的总工资和数量。

问题:示例函数在R编程中有什么用?

答: Sample() 函数可用于从庞大的数据集中选择大小为“n”的随机样本。

问题:子集函数在R编程中有什么用?

答: Subset() 函数用于从给定的数据集中选择变量和观察值。

问题: rnorm() 函数的作用是什么?用语法解释。

答案: rnorm 函数根据传递给函数的均值和标准差参数生成“n”个正态随机数。

句法:

rnorm(n, mean = , sd= )

问题:如何在 R 中制作散点图?

R语言面试题解析:散点图是一个图表,它显示了在笛卡尔平面上绘制的许多点。每个点都包含 x 轴和 y 轴上的两个值。使用 plot() 函数绘制简单的散点图。

散点图的语法是:

plot(x,y,main,xlab,ylab,xlim,ylim,axes)

其中

x 是其值为水平坐标的数据集

y 是其值为垂直坐标的数据集

主要是图中的瓷砖

xlab 和 ylab 是横纵轴的标签

xlim 和 ylim 是绘图中使用的 x 和 y 值的限制

轴指示是否两个轴都应该在绘图上。

plot(x = input$wt,y = input$mpg,
xlab = “Weight”,
ylab = “Mileage”,
xlim = c(2.5,5)
ylim = c(15,30)
main = “Weight vs Mileage”
)

问题: R 中的 sink 函数是什么?

答: sink() 函数定义了输出的方向。

#direct output to a file
sink(“myfile”, append = FALSE, split = FALSE)
#return output to the terminal sink()

append 选项控制输出是覆盖还是添加到文件中。split 选项确定输出是否也作为输出文件发送到屏幕。

R语言面试问题和答案合集概括

我们为你提供了流行的 R 编程面试问题,为你准备数据科学面试。这些 R 面试问题是最好的面试问题集。我们还建议你在参加面试之前练习编码,并且拥有一个你参与过的虚拟项目总是一个加分项。你在面试中还有其他问题吗?或者你想与 R 社区分享的任何其他技巧?

木子山

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: