R语言【base】——rep():复制向量和列表的元素

Package base version 4.2.0


Description

rep复制参数【x】中的值。它是一个泛型函数,这里描述了(内部)默认方法。

对于两种常见情况,rep.intrep_len 是更快的简化版本。在内部,它们是泛型的,因此可以为它们定义方法。


Usage

R 复制代码
rep(x, ...)

rep.int(x, times)

rep_len(x, length.out)

Arguments

参数【x】:一个向量(任何模式,包括列表)或一个因子,或(仅针对 rep)一个 POSIXctPOSIXltDate 对象;或包含该对象的 S4 对象。

参数【...】:传递给其他方法或从其他方法传递的进一步参数。对于内部默认方法,这些可以包括:

  • 参数【times】:一个整数值向量,给出长度为 **length(x)**的每个元素重复的(非负)次数,或者长度为 1 的整个向量重复的次数。负值或 NA 值是错误的。双精度向量被接受,其他输入被强制转换为整数或双精度向量。
  • 参数【length.out】:非负整数。输出向量的期望长度。其他输入将被强制转换为双向量和第一个元素。如果 NA 或无效则忽略。
  • 参数【each】:非负整数。参数【x】的每个元素每次都重复。其他输入将被强制转换为整型或双精度向量,并获取第一个元素。如果 NA 或无效,则视为 1

参数【times,length.out】:略。


Details

默认行为就是调用:rep(x, times = 1, length.out = NA, each = 1)。通常只指定一个附加参数,但如果参数【each】指定了其他两个参数中的任何一个,则首先执行其复制,然后执行由参数【times】或参数【length.out】决定的复制。

如果参数【times】由单个整数组成,则结果由重复多次的整个输入组成。如果参数【times】是与参数【x】长度相同的向量(分别复制后),则结果为 x[1] 重复乘以 [1] 次, x[2] 重复乘以 [2] 次,以此类推。

参数【length.out】可以代替参数【times】,在这种情况下,参数【x】被重复多少次就重复多少次来创建这个长度的向量。如果两者都给定,则参数【length.out】优先,参数【times】被忽略。

参数【times】的非整数值将被截断为零。如果时间是一个计算量,则谨慎地添加小数或使用 round。参数【each】也一样。

如果参数【x】的长度为0 。如果提供参数【length.out】并且为正数,则使用提取规则填充值,即使用原子向量(原始向量为0)的适当类的 NA 和列表的 NULL 填充值。


Value

与参数【x】相同类型的对象。

rep.intrep_len不返回任何属性(除了返回因子的类)。

如果参数【x】有名称,rep的默认方法给出结果名称(几乎总是包含重复项),但不保留其他属性。


Note

函数rep.int是一个简单的例子,它作为一个单独的函数提供,部分是为了 S 的兼容性,部分是为了速度(特别是当名称可以删除时)。从那以后,rep的性能得到了改进,但是当参数【x】有名称时,rep.int的速度仍然至少是原来的两倍。

相关推荐
代码雕刻家6 分钟前
C语言中关于类型转换不匹配的解决方案
c语言·开发语言·算法
RedJACK~19 分钟前
Go Ebiten小游戏开发:扫雷
开发语言·后端·golang
程序猿_极客33 分钟前
【2025】16届蓝桥杯 Java 组全题详解(省赛真题 + 思路 + 代码)
java·开发语言·职场和发展·蓝桥杯
玉树临风江流儿1 小时前
C++左值、右值、move移动函数
开发语言·c++
拾荒的小海螺2 小时前
JAVA:Spring Boot3 新特性解析的技术指南
java·开发语言·spring boot
程序猿20232 小时前
Python每日一练---第二天:合并两个有序数组
开发语言·python
椰羊sqrt2 小时前
CVE-2025-4334 深度分析:WordPress wp-registration 插件权限提升漏洞
android·开发语言·okhttp·网络安全
Js_cold2 小时前
Verilog任务task
开发语言·fpga开发·verilog
njxiejing2 小时前
Numpy一维、二维、三维数组切片实例
开发语言·python·numpy
一位搞嵌入式的 genius2 小时前
前端实战开发(四):从迭代器到异步编程:ES6 Generator 全面解析 + 实战问题排查
开发语言·前端·es6·前端实战