Tutorial Study Image

R面试题

R编程是一种解释性编程语言,用于在回归分析和数据挖掘领域进行统计分析和图形创建。Ross Ihaka 和 Robert gentlemen 于奥克兰大学创立了R编程语言。
 

R编程语言不像C、Java等常规编程语言那样使用数据类型。取而代之的是,R编程语言使用数据对象来进行计算。

在R编程语言中,它有6种不同类型的数据对象,分别是:

1. 列表(Lists)
2. 向量(Vectors)
3. 数组(Arrays)
4. 矩阵(Matrices)
5. 表格(Tables)
5. 数据框(Data frames)
 

在R语言中,如果有一系列相同数据类型的元素,则称为向量,向量中的元素称为组件。
 

列表与向量相反,如果元素是不同数据类型,如字符串、数字、向量等,我们就称之为列表。列表可以包含另一个列表。
 

数据框可以看作是矩阵和列表的组合。在数据框中,不同的列可以有不同的数据类型。
 

有效的变量名可以包含字母、数字、点或下划线。我们可以用字母或句点(.)开头一个变量。如果变量以句点开头,那么句点后面不能跟数字。最后,R有一些保留字不能使用。
 

我们知道R中的向量是单维的,且数据类型相同。矩阵是二维的,有行和列。而数组可以有任意维数。
 

R编程的一些基本语法包括:
"#" 用于注释,编译器不会处理它。
" "" " 引号用于在R中表示字符串。
" \" 反斜杠用于在R编程中忽略某些字符。
 

  1. 开源:R编程语言是开源的,因此可以免费使用并被广泛使用。
  2.  丰富的包:R包中有大量内置函数,我们可以轻松使用它们。
  3. 统计和图形特性:R编程因其图形特性而被广泛使用。

 

 

  1. 内存和性能:与Python相比,R在内存和性能方面不是很有竞争力。
  2. 安全性:在安全性方面,R编程不是非常有优势。
     

 

1. MICE
2. Missfores
3. Mi
4. Hmisc
5. Amelia
6. ImputeR
 

在R编程中,在声明对象时,我们使用initialize()函数来初始化私有数据成员。
 

我们可以使用R中的read.csv函数读取csv文件。它在读取时会创建一个数据框。
 

getwd()命令有助于在R编程中获取当前目录的名称。

如果我们想在R的任何循环中跳过一次迭代,就使用next语句。
 

R编程中有许多函数可以使用,一些内置函数包括:

abs(x)
sqrt(x)
floor(x)
trunc(x)
log(x)
等等
 

R编程中的Base包是设置R环境时加载的默认包。它包含了输入/输出、算术计算等函数。
 

逻辑回归基于二元变量的概率原理。我们可以使用R编程中的glm()函数进行逻辑回归。
 

假设我们有两个长度不同的向量参与运算,那么较短向量的元素将被重复使用以完成运算,这就称为向量的循环。

在R编程中,有3种方法可以调用函数:

  • 按参数名称调用
  • 按参数位置调用
  • 按默认参数调用
     

在惰性求值函数中,参数并不总是被求值。只有当参数在函数体内被使用或引用时,才会被求值。如果函数体对参数没有引用,那么它将被忽略,这就是惰性求值。
 

我们可以使用下面一行代码安装R编程中的包:
install.packages("package Name")
 

在R编程中,随机游走模型是一种没有方差或均值的模型。它具有很强的时间依赖性。在随机模型中,变化被称为白噪声或增量,它们是随机游走的原因。

在数据分析方面,Python没有内置的数据分析功能,而R编程则具有内置的数据分析功能。

如果我们需要Python的功能,则需要安装pandas等一些包。
 

现在有许多公司和网站正在使用R编程,而且还有许多公司正在转向R编程,其中一些是:

  • Twitter
  • Facebook
  • Google
  • NDAA
     

RStudio是R编程的开发环境。它充当一个用户界面,可以帮助我们轻松方便地进行R编程。它比Rgui更用户友好,并且有许多功能和下拉菜单,可以在R的许多定制和编程方面提供帮助。

  •  
  • R hadoop
  • RHIPE
  • ORCH
  • Hadoop streaming
     

在R编程中,我们使用subset()来获取观察值和变量,而sample()方法则获取用户定义大小的随机样本。

顾名思义,该命令用于通过选择包文件从本地目录安装R编程中的包。

hist()函数用于在R编程中制作直方图。
 

这与R编程中的数学运算有关,“%%”用于获得除法的余数,而“%/%”则返回除法的商。
 

rm()函数用于在R编程中删除向量。

如果我们想对数组的不同元素使用相同的函数,我们可以在R编程中使用apply()函数。例如:计算每行的平均值。
 

在R编程中,我们有一个名为“XML”的包来读取XML文件。

在R编程中,我们可以更新列表中的任何元素,但在删除方面,我们只能删除列表中的最后一个元素。
 

在R编程中创建矩阵的基本语法是“matrix(data, nrow, ncol, byrow, dimnames)”

在R编程中,我们有内置的boxplot()函数用于创建箱线图。它以数据框和公式作为输入。
 

通过按顺序执行一系列命令,将数据对象从一种形式转换为另一种形式,在R编程中称为数据重塑。例如:通过合并列表来形成一个数据框。
 

该命令或单行代码生成0到5之间的随机数。
 

在R编程中,通过“installed.packages()”命令,我们可以显示已安装的包列表。
 

两者都与R编程中的包相关。如果我们使用library()函数,如果找不到包,它会显示错误消息。而require()函数如果所需的包未加载,则会显示警告消息。
 

R编程中的t-test()函数用于确定两组的均值是否相同。

使用with()函数,我们可以将一个表达式应用于数据集,而by()函数则有助于应用一个函数。
 

两者都与输出显示有关。如果我们想将输出显示为列表,我们使用lapply,而sapply则将输出显示为数据框或向量。
 

aggregate()函数用于聚合数据。

R编程中的这个doBy包用于使用模型公式和函数定义一个表。

如果我们想在R编程中创建一个频率表,我们可以使用table()函数。
 

通过在R编程中使用strsplit命令,它会将向量在指定位置分割成两个子字符串。在我们的问题中,它会在位置“f”将向量‘x’分割成两个子字符串。

x <- "I Love R programming"
split.string <- strsplit(x, " ")
extract.words <- split.string[[1]]
result <- unique(tolower(extract.words))
print(result)
 

unlist()命令在R编程中将列表转换为向量。

我们可以使用data.frame()函数将JSON中的数据转换为数据框。

在R编程中,我们可以将每个矩阵都称为数组,但不能说每个数组都是矩阵。

矩阵是二维的,而数组可以是任意维度的。
 

R编程中的fitdistr()函数定义在MASS包中,用于对单变量分布进行最大似然拟合。
 

GGobi用于对高维数据进行可视化。R编程中的GGobi是一个开源程序。
 

我们已经了解了机器学习中的箱线图或散点图、直方图等。Iplots是一个包,有助于生成平行图、散点图、直方图等图。

Lattice()包有助于改进R编程中的基础图形。它提高了默认值的质量,并使多变量关系的显示更加容易。

anova()函数在R编程中用于比较嵌套的模型。
 

cv.lm()函数用于验证R中的k折交叉验证。它定义在DAAg包中。
 

stepAIC()函数用于逐步模型选择,它定义在MASS包中。
 

leaps()函数定义在leaps包中,用于执行所有子集回归。
 

Relaimpo包在R编程中用于检查模型中所有预测变量的相对重要性。
 

MANOVA表示多变量方差分析,它用于同时检验多个因变量。
 

R编程中的robust包提供了一系列稳健方法,包括回归。
 

在R编程中,我们使用指数模型和ARIMA模型。forecast包提供了用于选择这些模型的函数。
 

qda()函数用于显示R语言中的二次判别分析。

如果判别函数的依据是某些中心化的变量,我们应该在R中使用lda()来显示这些判别函数。

我们知道R语言有ARIMA模型,包括季节性和非季节性。auto.arima()函数可以处理这两者。
 

如果我们想在R语言中旋转或提取主成分,我们应该使用principal()函数。

它是R语言中可用的一种包,包括定性变量和定量变量。也包含观测值和辅助变量。
 

我们有一个命令,例如“?NA”,用于查找关于缺失值的帮助页面。

我们可以在R语言中使用一行代码计算标准差:“sd(n, na.rm=TRUE)”
 

我们在R中有“col.max(x)”命令。
 

使用命令“data(package = "package_name")”
 

我们有命令“data(package = .packages(all.available = TRUE))”
 

pairs( formula, data)

其中formula是成对出现的变量,data是取这些变量的数据集。
 

is.matrix(object)返回TRUE,那么它就是一个矩阵数据对象。
 

我们有t()函数用于查找任何矩阵的转置。这里我们需要在括号中添加矩阵名称。
 

R编程中的SEM表示结构方程模型。
 

R编程中的CFA表示验证性因子分析。
 

使用R编程中的cluster.stats()函数,我们可以使用不同的验证方法来比较两个聚类解决方案的相似性。此函数定义在R的fpc包中。

它用于层次聚类,并提供p值。它定义在R语言的pvclust包中。
 

这包括用于创建Matlab函数调用副本的变量和函数[包装器]。

  • Plotly
  • Ggplot2
  • Tidyquant
  • Geofacet
  • Shiny
  • googleVis
     

卡方检验用于检查两个变量的类别之间是否存在任何关系。它有助于检查频率表。
 

它被称为决策树森林,是一种分类和回归方法,在机器学习教程中有详细介绍。

饼图就像一个圆形图,其中各个组成部分由各种颜色的圆的切片形成。饼图是R编程库中用于制作图表和图表的众多包之一。
 

在R编程中,我们可以在代码的任何地方写注释,但必须以“#”开头。
 

我们可以在R语言中使用以下方式创建表:
myTable = data.frame()
edit(myTable)

 

我们可以说它有两个不同的系统:32位和64位。在32位操作系统中,内存限制为2或3GB。如果系统是64位的,则可达8TB。
 

  1. 冒泡排序
  2. 选择排序
  3. 归并排序
  4. 快速排序
  5. 桶排序
     

我们可以使用赋值运算符‘ <- ’在R编程中创建一个变量。
 

这是一种用于计算样本大小效应的设计。Pwr包在R编程中用于功效分析。

我们有不同的方法可以使用R导出数据,其中一些是:

  1. Sas
  2. Spss
  3. Stata
  4. Excel
     
  1. Excel xlsReadWrite 包
  2. Foreign 包
     

我们在R编程中使用“NaN”来表示不可能的值。

为了在R编程中将对象保存到文件,我们使用“save()”命令。
 

order()函数用于R语言中的排序。