R语言
roman
位于 utils
包(package)。 说明
将(一小组)整数简单地处理为罗马数字。
用法
as.roman(x)
.romans
r1 + r2
r1 <= r2
max(r1)
sum(r2)
参数
x |
阿拉伯数字或罗马数字的数字或字符向量。 |
r1, r2 |
罗马数字向量,即 |
细节
as.roman
创建 "roman"
类的对象,这些对象在内部表示为整数,并具有合适的打印、格式化、子集、强制等方法,请参阅 methods(class = "roman")
。
算术("Arith"
), 比较 ("Compare"
) 和 ("Logic"
),即所有"Ops"
群组操作与常规号码一样,通过R的整数函数。
只有 1 到 3899 之间的数字具有罗马数字的唯一表示形式,因此其他数字会导致 as.roman(NA)
。
.romans
是基本字典,一个名为character
的向量。
例子
## First five roman 'numbers'.
(y <- as.roman(1 : 5))
## Middle one.
y[3]
## Current year as a roman number.
(y <- as.roman(format(Sys.Date(), "%Y")))
## Today, and 10, 20, 30, and 100 years ago ...
y - 10*c(0:3,10)
## mixture of arabic and roman numbers :
as.roman(c(NA, 1:3, "", strrep("I", 1:6))) # + NA with a warning for "IIIIII"
cc <- c(NA, 1:3, strrep("I", 0:5))
(rc <- as.roman(cc)) # two NAs: 0 is not "roman"
(ic <- as.integer(rc)) # works automatically [without an explicit method]
rNA <- as.roman(NA)
## simple consistency checks -- arithmetic when result is in {1,2,..,3899} :
stopifnot(identical(rc, as.roman(rc)), # as.roman(.) is "idempotent"
identical(rc + rc + (3*rc), rc*5),
identical(ic, c(NA, 1:3, NA, 1:5)),
identical(as.integer(5*rc), 5L*ic),
identical(as.numeric(rc), as.numeric(ic)),
identical(rc[1], rNA),
identical(as.roman(0), rNA),
identical(as.roman(NA_character_), rNA),
identical(as.list(rc), as.list(ic)))
## Non-Arithmetic 'Ops' :
stopifnot(exprs = {
# Comparisons :
identical(ic < 1:5, rc < 1:5)
identical(ic < 1:5, rc < as.roman(1:5))
# Logic [integers |-> logical] :
identical(rc & TRUE , ic & TRUE)
identical(rc & FALSE, ic & FALSE)
identical(rc | FALSE, ic | FALSE)
identical(rc | NA , ic | NA)
})
## 'Summary' group functions (and comparison):
(rc. <- rc[!is.na(rc)])
stopifnot(exprs = {
identical(min(rc), as.roman(NA))
identical(min(rc, na.rm=TRUE),
as.roman(min(ic, na.rm=TRUE)))
identical(range(rc.),
as.roman(range(as.integer(rc.))))
identical(sum (rc, na.rm=TRUE), as.roman("XXI"))
identical(format(prod(rc, na.rm=TRUE)), "DCCXX")
format(prod(rc.)) == "DCCXX"
})
参考
Wikipedia contributors (2006). Roman numerals. Wikipedia, The Free Encyclopedia. https://en.wikipedia.org/w/index.php?title=Roman_numerals&oldid=78252134. Accessed September 29, 2006.
相关用法
- R readRegistry 读取 Windows 注册表配置单元
- R removeSource 从函数或语言对象中删除存储的源
- R read.DIF 从电子表格输入数据
- R remove.packages 删除已安装的软件包
- R relist 允许重新列出未列出()的对象
- R read.socket 从套接字读取或写入
- R rtags 类似 Etags 的 R 标记实用程序
- R read.table 数据输入
- R rcompgen R 的补全生成器
- R recover 错误后浏览
- R read.fortran 以类似 Fortran 的方式读取固定格式数据
- R read.fwf 读取固定宽度格式文件
- R select.list 从列表中选择项目
- R COMPILE 编译用于 R 的文件
- R browseVignettes 在 HTML 浏览器中列出晕影
- R hasName 检查姓名
- R nsl 按主机名查找 IP 地址
- R edit 调用文本编辑器
- R create.post 准备电子邮件和帖子的辅助函数
- R hsearch-utils 帮助搜索实用程序
- R download.packages 从类似 CRAN 的存储库下载软件包
- R DLL.version MS Windows 上的 DLL 版本信息
- R ls.str 列表对象及其结构
- R Rscript R 前端脚本
- R bug.report 发送错误报告
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Roman Numerals。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。