R中的rep()函数

时间:2020-02-23 14:43:56  来源:igfitidea点击:

使用R中的rep()函数可以很容易地重复这些值。

大家好,本文将讨论rep()函数在R中的应用。
您可能知道,还可以使用paste()函数来连接R中的值。

但是,当涉及到大量重复值的情况时,paste()函数将失败。

为了解决这种情况,R提供了一个名为rep()的函数,该函数根据输入自变量/参数重复这些值。

rep()函数语法

rep():rep函数将根据R中的输入参数重复这些值。

rep(x,times,each,length.out)

其中:

X =需要重复输入数据。

  • Times =代表数值应重复的次数。

  • 每个=表示每个值应重复的次数。

  • Length.out =直到应重复值的程度。

rep()有很多用例。
本文将包含许多示例,并且也会很有趣。
到最后,您将充分利用R中的rep()函数。

在R中实现rep()函数

其中我们将看到rep()函数及其工作的简单示例。

#repeats 2, 5 times
rep(2,5)

Output = 2 2 2 2 2

上面的代码将值" 2"重复" 5"次。
希望您了解此功能的工作原理。

#repeats 25.5, 6 times

rep(25.5,6)

Output = 25.5 25.5 25.5 25.5 25.5 25.5

您可以像上面显示的那样重复十进制值。

#repeats -2.5, 8 times
rep(-2.5,8)

Output = -2.5 -2.5 -2.5 -2.5 -2.5 -2.5 -2.5 -2.5

R中几乎所有函数都处理负值,并且rep()函数也不是免除项。

您可以输入十进制值,正值或者负值,然后rep函数将根据输入参数返回重复值。

1. R中带有"每个"参数的rep()函数

rep()函数中的"每个"参数将定义每个值应重复多少次。
下面有多个示例,这些示例将清楚地说明其工作原理。

#repeats each value 3 times
rep(1:3,each=3)

Output = 1 1 1 2 2 2 3 3 3

其中您可以看到从1到3的每个数字重复三次。

#repeats each value 3 times

rep(c(1,2,3),each=3)

Output = 1 1 1 2 2 2 3 3 3

在上面的代码中,我已编写了所有应作为元组重复三次的元素。

如果数字更多,则可以使用1:20的方法代替写从1到20的所有数字。

2. R中带有" length.out"参数的rep()函数

在本节中,我们将看到length.out参数如何与rep()函数一起使用。

我们将通过两个示例来理解这一论点。

#repeats each value 5 times

rep(1:5,times = 5)

Output = 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5

在上述示例中,将1到5的数字重复了5次。
数字的总数是25对吗?

好吧,下面看这个例子。

##repeats each value 5 times upto 10 values

rep(1:5,times = 5,length.out = 10)

1 2 3 4 5 1 2 3 4 5

很明显,无论重复次数是多少,总数都限制为10,即" 5"。

因此,length.out函数将确定输出的总长度,而无需考虑它们需要重复的次数。
让我们以字符串而不是数字为例。

#repeats each value 5 times

rep(c("Jhon","Rahul","gaga"),times=5)

Output = "Jhon"  "Rahul" "gaga"  "Jhon"  "Rahul" "gaga"  "Jhon"  "Rahul" "gaga"  "Jhon"  "Rahul"
"gaga"  "Jhon"  "Rahul" "gaga" 

所有名称都重复了5次。

#repeats up to 8 values

rep(c("Jhon","Rahul","gaga"),times=5,length.out = 8)

Output = "Jhon"  "Rahul" "gaga"  "Jhon"  "Rahul" "gaga"  "Jhon"  "Rahul"

该参数将重复值的总数减少为8,并且第3次未打印" gaga"。
这就是您的length.out参数。

同样,您也可以使用length.out延长值。

#repeats up to 20 values

rep(1:3,length.out = 20)

Output =  1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2

Length.out参数将确定重复值的长度。
如上面的示例所示,它可以减少和延长值。

3.使用rep()函数重复单个值

到现在为止,我们已经重复了输入中存在的所有值。
但是您知道您可以专门重复每个值吗?

让我们看看它是如何工作的!

#repeats individual values  
rep(c(2,5),times = c(5,2))

Output = 2 2 2 2 2 5 5

好极了!您可以看到上面的示例,其中" 2"重复了5次,而" 5"重复了2次。

rep(c("R","Programming"),times = c(2,4))

"R"   "R"  "Programming" "Programming" "Programming" "Programming"

再次是相同的示例,但是这次是字符串。