我正在为未能找到与查询的正确匹配项的 R 函数编写错误处理步骤,因此向用户提供了一个选项列表。我在列表中有潜在匹配项的输出,我希望警告将其格式化为编号列表:
'multiple matches for query "Tom", select which one you want:'
[1] Tom Bombadil
[2] Tom Overhill
[3] Justanother Tom
不幸的是,警告和消息似乎喜欢删除换行符。例如,如果我有:
opts <- list("Tom Bombadil", "Tom Overhill", "Justanother Tom")
命令
warning(opts)
打印:
Warning message:
Tom BombadilTom OverhillJustanother Tom
我如何从上面把它变成我想要的格式(最好是数字,这样我就可以从 readLines
中捕获数字选择)
谢谢!
最佳答案
这个怎么样:
select.list(c("Tom Bombadil", "Tom Overhill", "Justanother Tom"),
title = "Multiple matches for query \"Tom\",
select which one you want:")
Multiple matches for query "Tom", select which one you want:
1: Tom Bombadil
2: Tom Overhill
3: Justanother Tom
Selection: 2
[1] "Tom Overhill"
关于R:将 `warning()` 的输出格式化为超过一行的选项列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12343893/