简介这是一份面向R语言初学者与备考人员的试题练习文档围绕R语言基础知识点组织题目并附带参考答案可用于课程复习、自测检验与考前查漏补缺。内容覆盖描述性统计与推断性统计的区分、名义数据与计量数据等数据类型判断以及getwd()、head()、ls()、rm()等常用操作命令并延伸到向量运算、因子创建、矩阵构造与索引等数据操作与函数应用题型题目形式以选择、填空和代码输出判断为主。资源包共1个docx文件约96KB轻量易取打开即可对照练习。目前已有11252人学习下载说明其在R语言入门练习场景中具备一定参考价值适合边做题边核对答案、巩固语法细节与常见易错点。1. R语言试题复习地图从数据类型到假设检验的完整脉络R语言这门课很多人栽跟头的地方不是不会写代码而是基础概念混淆——比如把名义数据和有序数据搞反把apply和tapply用错场景或者对[ ]、[[ ]]、$的取值差异一知半解。这份试题附带答案的文档恰好覆盖了从绪论到参数估计的完整知识链条梳理下来会发现它其实是一张很清晰的地图统计学基础概念 → R软件入门 → 数据描述性分析 → 概率与随机变量 → 参数估计与假设检验。每个模块都有对应的典型考题适合正在系统学习R语言、或者期末复习想快速查漏补缺的人。下面按这条主线把每个模块的要点、难点和易错点逐一拆开。2. 统计学基础与数据类型描述性统计和推断性统计怎么分2.1 描述性统计与推断性统计的边界试题第一题就问用图或表描述数据属于什么答案是描述性统计。统计学的两大分支——描述性统计和推断性统计——这个划分是整门课的地基。描述性统计负责“看数据长什么样”用图表、均值、方差等手段概括推断性统计负责“从样本猜总体”包括参数估计和假设检验。很多同学做题时容易把两者搞混记住一个判断标准有没有用到概率分布去推断未知。用图或表展示数据没有推断过程就是描述性统计用样本均值去估计总体均值涉及概率就是推断性统计。2.2 数据类型名义、有序、计数、计量数据类型是高频考点也是容易翻车的地方。试题里反复出现四类数据数据类型分类举例特点名义数据定性数据学历本科/硕士/博士类别之间无顺序有序数据定性数据满意度低/中/高类别之间有顺序计数数据定量数据人数、次数取值为非负整数计量数据定量数据身高、体重可取任意数值梳理下来会发现定性数据分名义和有序定量数据分计数和计量这个层级关系必须刻在脑子里。试题中“学历是名义数据”“身高是计量数据”就是直接考这个分类。最容易忽略的是有序数据虽然也是定性数据但它有顺序信息不能当名义数据处理。2.3 R中的数据类型判断与转换R语言里用class()查看数据类型用is.numeric()、is.character()等函数判断。试题中有一道典型题x - 3 y - as.character(x) y is.numeric(y)输出结果是[1] 3和[1] FALSE。这里的关键是as.character()把数值型转成了字符型所以is.numeric()返回 FALSE。很多同学看到3就以为是数值忽略了转换后的类型变化。类型转换后一定要重新判断这是血泪经验。3. R软件入门工作空间、向量运算与常用函数3.1 工作目录与对象管理R的工作目录是文件读写的基础。试题中问“查看当前R的工作目录的命令”答案是getwd()。对应的设置命令是setwd()这两个函数名容易记混——get是获取set是设置记住这个对应关系就不会错。对象管理方面ls()列出当前工作空间所有变量名ls.str()列出变量名及结构。删除对象的命令是rm()试题中有一道经典题删除所有以字母 n 开头的对象写法是rm(list ls(pat ^n))这里pat参数支持正则表达式^n表示以 n 开头。注意list参数必须配合ls()使用不能直接写rm(ls(pat^n))这是最容易踩的坑。3.2 向量运算与循环补齐R的向量运算有一个核心机制循环补齐。试题中c(1,2,3,4,5) c(20,200)的结果是[1] 21 202 23 204 5因为短向量c(20,200)被循环扩展为c(20,200,20,200,20)再逐元素相加。这个机制在向量长度不整除时会给出警告但结果仍然按补齐计算。另一个高频考点是冒号运算符的优先级。1:n-1的结果是0 1 2因为:的优先级高于-先算1:n得到1 2 3再减1得到0 1 2。如果想得到1 2需要写成1:(n-1)。这个细节在考试中反复出现括号的位置决定结果。3.3 常用统计函数速查试题中涉及大量统计函数整理如下函数作用示例mean()均值mean(c(1,2,3))→ 2median()中位数median(c(1,2,3))→ 2var()方差var(c(1,2,3))→ 1sd()标准差sd(c(1,2,3))→ 1min()最小值min(c(21,8,2,5,11))→ 2which.min()最小值位置which.min(c(21,8,2,5,11))→ 3sum()求和sum(seq(1,5,by2))→ 9length()长度length(rep(1:3, c(2,2,3)))→ 7其中seq(1,5,by2)生成1 3 5求和为9rep(1:3, c(2,2,3))生成1 1 2 2 3 3 3长度为7。这些函数的参数含义要清楚比如rep()的length.out参数控制输出长度mean(rep(1:3, length.out5))先把1:3循环补齐到5个元素1 2 3 1 2再求均值得1.8。3.4 逻辑运算与条件筛选逻辑向量是R的一大特色。which(2:8 5)返回满足条件的下标6 7 8因为2:8是2 3 4 5 6 7 8大于5的位置是第5、6、7个对应值6、7、8。注意which()返回的是位置索引不是值本身。条件筛选用[ ]配合逻辑向量x - rep(c(1,4,7), c(3,2,1)) x[x 5]x为1 1 1 4 4 7筛选大于5的元素得到7。这种写法在数据清洗中非常常用逻辑索引比循环高效得多。4. 数据对象操作矩阵、列表与数据框4.1 矩阵的创建与索引矩阵是二维数组创建方式有多种。试题中要求生成一个3行4列的矩阵内容为1到12按列填充A - matrix(1:12, nrow 3, ncol 4)或者用array()A - array(1:12, dim c(3, 4))矩阵索引用[行, 列]比如A[2:3, 3:4]取第2到3行、第3到4列的子矩阵。试题中有一道题要求取出[1] 1 2 3对应代码是A[,1]或A[1:3,1]即取第一列所有元素。逗号的位置决定取行还是取列这是矩阵操作的基本功。矩阵合并用rbind()按行合并cbind()按列合并。试题中“前两个矩阵合并成第三个矩阵”用的是cbind()因为列数增加了。4.2 列表的嵌套访问列表可以装任意类型的数据。试题中构造了一个列表v1 - c(10:18) v2 - c(a, b, c) m - matrix(1:9, nrow 3) f - factor(c(M, F, F, M)) mylist - list(v1, v2, m, f)访问列表元素用[[ ]]而不是[ ]。mylist[[2]][3]取出第二个元素字符向量的第三个值结果是c。如果想取矩阵中的数字8矩阵m是3行3列按列填充1 4 7 / 2 5 8 / 3 6 98在第2行第3列所以代码是mylist[[3]][2, 3]。列表的[[ ]]取出的是元素本身[ ]取出的是子列表这个区别在考试中经常设陷阱。4.3 数据框的列访问方式数据框是R中最常用的数据结构每列可以是不同类型。试题中构造了一个包含姓名、性别、年龄、身高、体重的数据框要求取出身高列。三种写法都正确df[Height] # 返回数据框 df[[Height]] # 返回向量 df$Height # 返回向量区别在于df[Height]返回的是数据框而df[[Height]]和df$Height返回的是向量。试题中要求得到[1] 56.5 65.3 57.3 62.5 59.0这样的向量输出所以选 B、C、D。数据框的列本质是向量列内类型一致列间类型可以不同这是它和矩阵的本质区别。4.4 因子与分类统计因子用于处理分类数据。试题中有一道关于公司部门数据的题1代表行政部2代表财务部3代表销售部只想对1和2两个部门做分类统计正确写法是new_x - factor(x, levels c(1, 2), labels c(行政部, 财务部))这里levels只指定1和2排除了3labels对应给出标签。如果用gl()函数它是专门生成因子序列的不适合这种从已有数据转换的场景。factor()用于转换gl()用于生成这个区别要分清。5. 概率分布与统计推断从二项分布到假设检验5.1 离散型分布二项、泊松、超几何离散型随机变量有三个常见分布分布参数期望方差适用场景二项分布 B(n,p)n, pnpnp(1-p)有放回抽样泊松分布 P(λ)λλλ单位时间事件次数超几何分布N, M, n——无放回抽样二项分布适用于有放回抽样超几何分布适用于无放回抽样这是两者的核心区别。泊松分布的期望和方差相等都是 λ这个特点在试题中直接考到。5.2 连续型分布均匀、正态、指数连续型随机变量也有三个常见分布分布参数期望方差均匀分布 U(a,b)a, b(ab)/2(b-a)²/12正态分布 N(μ,σ²)μ, σ²μσ²指数分布 Exp(λ)λ1/λ1/λ²试题中有一道关于洗车店的题1小时内到达的汽车数服从泊松分布均值为10辆/小时则车辆间隔时间服从指数分布平均间隔时间为1/10小时。这里考的是泊松分布与指数分布的关系——泊松描述事件发生次数指数描述事件间隔时间两者参数互为倒数。5.3 统计量与抽样分布统计量是样本的函数不含未知参数。试题中有一道判断题总体 X~N(μ,σ²)μ未知σ²已知问哪个不是统计量。关键是看式子中是否含有未知参数 μ含有 μ 的就不是统计量。样本均值的分布若 X~N(μ,σ²)则样本均值X̄~N(μ, σ²/n)。这个结论在参数估计和假设检验中反复用到样本均值的方差是总体方差的1/n样本量越大均值越集中。统计三大分布是 χ²分布、t分布、F分布它们分别由正态分布派生而来在区间估计和假设检验中扮演重要角色。5.4 参数估计方法常见点估计方法有矩估计法、最大似然估计法和最小二乘估计法。矩估计法的基本思想是用样本矩去估计总体矩比如用样本均值估计总体均值用样本方差估计总体方差。这种方法直观但不一定最优最大似然估计法在样本量较大时通常更有效。6. 易错点与易漏点这些坑我替你踩过了6.1 数据类型判断易错点易漏点 → 为什么漏 → 怎么补名义数据和有序数据搞反学历是名义数据满意度是有序数据但很多同学看到“学历”有高低之分就误判为有序。补法记住有序数据的类别之间有自然顺序学历的“本科/硕士/博士”虽然有高低但统计学中通常按名义数据处理除非明确说明按等级排序。计数数据和计量数据混淆人数是计数数据身高是计量数据。补法计数数据取值为非负整数计量数据可取任意数值看有没有小数。类型转换后忘记重新判断as.character(3)之后is.numeric()返回 FALSE。补法每次类型转换后用class()或is.xxx()确认一下。6.2 R语法易错点[ ]和[[ ]]混用列表用[[ ]]取元素用[ ]取子列表。补法记住“双括号进一层”。冒号优先级1:n-1是(1:n)-1不是1:(n-1)。补法不确定就加括号。rm()删除对象rm(listls(pat^n))中list参数不能省。补法记住rm的list参数接受的是对象名向量。head()的n参数head(rt, n10)显示前10行不写n也可以但写清楚更规范。6.3 分布与统计量易错点泊松分布和指数分布参数混淆泊松的 λ 是均值指数的 λ 是率期望是 1/λ。补法记住“泊松看次数指数看间隔参数互为倒数”。统计量含未知参数统计量不能含未知参数含了就不是统计量。补法做题时先看式子中有没有 μ、σ 等未知量。样本均值方差X̄~N(μ, σ²/n)不是N(μ, σ²)。补法记住样本均值的方差是总体方差的1/n。6.4 矩阵与数据框易错点矩阵索引逗号位置A[2:3, 3:4]取行2到3、列3到4。补法逗号前是行逗号后是列。数据框列访问返回类型df[Height]返回数据框df$Height返回向量。补法要向量用$或[[ ]]。因子 levels 和 labels 对应levels指定原始值labels指定标签数量要对应。补法先确定要保留哪些 levels再写对应的 labels。7. 复习清单考前一周怎么查漏补缺复习到这一步知识点已经过了一遍接下来要做的就是针对性查漏补缺。根据这份试题的覆盖范围我整理了一份考前一周的复习清单按优先级排列优先级模块复习动作自检标准高数据类型默写四类数据的定义和举例能区分名义/有序、计数/计量高向量运算手算循环补齐和冒号优先级1:n-1和1:(n-1)结果不同高矩阵索引练习[行,列]取值能写出取指定子矩阵的代码中列表访问区分[ ]和[[ ]]能取出嵌套列表中的元素中数据框练习三种列访问方式知道哪种返回向量中概率分布默写六个分布的期望和方差泊松和指数参数关系不混低统计量判断式子是否含未知参数含 μ 的不是统计量低参数估计记住三种点估计方法矩估计用样本矩估计总体矩复习方法上建议先做一遍试题把错题标记出来再对照上面的易错点逐个补。对于代码题不要只看答案要亲手在R里跑一遍看看输出结果和预期是否一致。特别是向量运算和矩阵索引手算和机算结合印象更深。还有一个技巧把常用函数整理成一张速查表贴在电脑旁边。比如getwd()、setwd()、ls()、rm()、head()、mean()、median()、var()、sd()、factor()、matrix()、apply()、tapply()这些每天看一遍考试时不用现想。最后说一个我自己的习惯每次做错一道题我都会在笔记本上写三行——错在哪、为什么错、下次怎么避免。比如“which.min()返回位置不是值”“df[Height]返回数据框不是向量”“泊松和指数参数互为倒数”。考前翻一遍比重新看书效率高得多。从那以后我每次复习R语言都强制走一遍这个流程希望帮到你。本文还有配套的精品资源点击获取
阅读完成 · 觉得有帮助?