用R语言实现科研数据高效预处理(一)练习题

文摘   2024-11-25 08:00   荷兰  

我们在第一期主要学习了如何在R中对向量进行有效索引,以及高效利用R中的回收与向量化运算。在第一期的作业中,我们将会练习这一技能。


练习题

以下每个练习如无特别说明,则都可以使用单行代码完成!


a) 尝试用seq()函数生成一列从199的奇数向量;

b) 使用以下代码生成Vec1:

    len <- sample(1000:1500, 1)    Vec1 <- sample(1:100, len, replace=TRUE)

现在,借助seq()函数提取Vec1中所有奇数位置的元素(也就是Vec1中的第1个,第3个,第5元素),由于Vec1的长度每一次都是随机的,所以请注意确保你的代码的可重复性;

尝试不借助seq()函数达到相同结果;

c) 提取Vec1中的所有偶数元素(非偶数位置);

d) Vec1中每个元素加上其对应序数的数字,也就是说,对Vec1中的第一个元素加上1,第二个元素加上2,第三个元素加上3……

e) 借助回收的特性,对Vec1中的每个奇数位置的元素加上1

f) Vec1中的每个元素进行n次方运算,n为该元素所处的位置。也就是说,生成向量的第一个元素为Vec1[1]1次方,第二个元素为Vec1[1]2次方……

g) Vec1中的每个元素进行交替次方运算,第一个元素提升2次方,第二个元素提升3次方,第三个元素提升2次方,第四个元素提升3次方……

h) (Challenging) 借助ifelse()函数,仅对Vec1中奇数位置的每个元素加3,偶数位置不变;

i) (Challenging) Vec1中每个奇数位置的元素提升其对应位置的次方,也就是说,对第一个元素提升1次方,对第三个元素提升3次方,对第五个元素提升5次方……(该练习可以通过两行代码完成)


答案

PsychoStatisticia
一个统计学研究者的个人天地
 最新文章