小编gla*_*ugh的帖子

为什么函数 toTitleCase 不适用于 english(1),但 toupper 可以?

我正在使用 来library(english)让我的 rmarkdown 文档正确符合 APA 指南,了解何时将数字写成单词。超级方便,我可以将我的值包含进去english(),结果就正确了。

显然,当以数字开头的句子时,它需要将第一个字母大写,所以我想我可以将其换行english(1)tools::toTitleCase()但它不喜欢它:

Error in toTitleCase(english(1)) : 'text' must be a character vector
Run Code Online (Sandbox Code Playgroud)

toupper(english(1))正如人们所期望的那样工作:

> toupper(english(1))
[1] "ONE"`
Run Code Online (Sandbox Code Playgroud)

我有一个可行的解决方案:

toTitleCase(as.character(english(1)))

对我来说很好,但是...

...这里发生了什么?为什么能够按照您的预期toupper()处理输出,但却抛出错误?english(1)toTitleCase()

代表:

install.packages("english")
library(engilsh)
library(tools)

toTitleCase(english(1))

toupper(english(1))
Run Code Online (Sandbox Code Playgroud)

编辑:

我是个白痴:有一个 function english::Words(1),它正是我想要的。

r class typeof

1
推荐指数
1
解决办法
61
查看次数

标签 统计

class ×1

r ×1

typeof ×1