13

R パッケージの 1 つに、引数の 1 つを持つ単純な関数がありますsymbol = "£"

formatPound <- function(x, digits = 2, nsmall = 2, symbol = "£"){ 
  paste(symbol, format(x, digits = digits, nsmall = nsmall)) 
}

しかし、実行するR CMD checkと、次の警告が表示されます。

* checking R files for non-ASCII characters ... WARNING
Found the following files with non-ASCII characters:
  formatters.R

£問題を引き起こすのは間違いなくそのシンボルです。などの正当な ASCII 文字に置き換えると$、警告が消えます。

質問:警告£を発生させずに、関数の引数で使用するにはどうすればよいですか?R CMD check

4

2 に答える 2

15

「R 拡張機能の作成」のセクション 1.7.1 「エンコーディングの問題」でこれがカバーされているようです。


このページの推奨事項の 1 つは、Unicode エンコーディングを使用すること\uxxxxです。£ は Unicode 00A3 であるため、次を使用できます。

formatPound <- function(x, digits=2, nsmall=2, symbol="\u00A3"){
  paste(symbol, format(x, digits=digits, nsmall=nsmall))
}


formatPound(123.45)
[1] "£ 123.45"
于 2012-07-12T13:27:06.043 に答える