Skip to content

Latest commit

 

History

History
170 lines (119 loc) · 5.32 KB

README_JP.md

File metadata and controls

170 lines (119 loc) · 5.32 KB

English | 日本語

NumComma

{NumComma}はR上で三桁ごとにコンマで区切られた数字とコンマで区切られていない数字とで相互変換できます。

文字列中のコンマで区切られた数字や区切られていない数字を取り扱うための*_str関数も備えています。

Installation

remotes::install_github("indenkun/NumComma")

でインストールできます。

Example

library(NumComma)

{NumComma}は三桁ごとにコンマで区切られた数字をコンマで区切られていない数字に変換するためのNumComma_rmと、数字を三桁ごとにコンマで区切られた数字(文字列)に変換するためのNumComma_addがあります。また、それぞれの関数の拡張として、文字列中の数字に対してそれぞれの変換を行うNumComma_rm_strNumComma_add_strがあります。

NumComma_rmNumComma_rm_str

NumComma_rmは三桁ごとにコンマで区切られた数字(文字列)をコンマを含まない数字に変換することができます。

NumComma_rm("2,020")
#> [1] "2020"

コンマを含まない数字の場合はそのままの数を返します。

NumComma_rm("2020")
#> [1] "2020"

小数点以下の数を含む数字も変換できます。

NumComma_rm("1,234.56")
#> [1] "1234.56"

複数の値を受け取ることも可能です。

x <- c("2,020", "2020", "1,234.56")
NumComma_rm(x)
#> [1] "2020"    "2020"    "1234.56"

convertTRUEを指定すると文字列ではなく数として値を返すこともできます。

x <- c("2,020", "2020", "1,234.56")
NumComma_rm(x, convert = TRUE)
#> [1] 2020.00 2020.00 1234.56

三桁ごとにコンマで含まれた数字かコンマを含まない数字以外の値を入力すると警告文とともに入力された値をそのまま返します。

NumComma_rm("1,23,456")
#> Warning in .f(.x[[1L]], .y[[1L]], ...): this format cannot be converted.
#> [1] "1,23,456"
NumComma_rm("NumComma_rm")
#> Warning in .f(.x[[1L]], .y[[1L]], ...): Strings containing characters other than
#> numbers and commas cannot be converted.
#> [1] "NumComma_rm"

警告文はWarnig.messageFALSEを指定すると表示しないようにできます。

NumComma_rm(c("1,23,456", "NumComma_rm"), warnig.message = FALSE)
#> [1] "1,23,456"    "NumComma_rm"

NumComma_rm_strは文字列中の三桁ごとにコンマで区切られた数字をコンマで区切られていない数字に変換するための関数です。

NumComma_rm_str("日本の総人口は2020年1月1日時点で124,271,318人です。")
#> [1] "日本の総人口は2020年1月1日時点で124271318人です。"

NumComma_addNumComma_add_str

NumComma_addは数字を三桁ごとにコンマで区切らた数字(文字列)に変換するための関数です。

数字や数字を表す文字列を受け付けることができます。

NumComma_add(123456)
#> [1] "123,456"
NumComma_add("123456")
#> [1] "123,456"

0から始まる連続する数字を文字列として入力した場合ははそのままの値を返します。

NumComma_add("0001")
#> [1] "0001"

数を表す文字列ではない文字列(コンマを含む数字を含む)を入力した場合は警告文とともに入力された値をそのまま返します。

NumComma_add(c("NumComma_add", "1,234"))
#> Warning in .f(.x[[i]], ...): Strings containing characters other than numbers
#> cannot be converted.

#> Warning in .f(.x[[i]], ...): Strings containing characters other than numbers
#> cannot be converted.
#> [1] "NumComma_add" "1,234"

警告文はWarnig.messageFALSEを指定すると表示しないようにできます。

NumComma_add(c("NumComma_add", "1,234"), warnig.message = FALSE)
#> [1] "NumComma_add" "1,234"

digitで指定した桁数(小数点以下を含む)以上の数字のみを三桁ごとにコンマで区切られた数字に変換することや、small.numで指定した数以上の数字のみを三桁ごとにコンマで区切られた数字に変換することもできます。

NumComma_add(c(123456, 2020), digit = 4)
#> [1] "123,456" "2020"
NumComma_add(c(123456, 2020), small.num = 3000)
#> [1] "123,456" "2020"

NumComma_add_strは文字列中の数字をコンマで区切られた数字に変換するための関数です。

NumComma_add_str("日本の総人口は2020年1月1日時点で124271318人です。")
#> [1] "日本の総人口は2,020年1月1日時点で124,271,318人です。"

NumComma_add_strNumComma_addと同様に変換する数字を引数で制御することができます。

NumComma_add_str("日本の総人口は2020年1月1日時点で124271318人です。", digit = 4)
#> [1] "日本の総人口は2020年1月1日時点で124,271,318人です。"
NumComma_add_str("日本の総人口は2020年1月1日時点で124271318人です。", small.num = 3000)
#> [1] "日本の総人口は2020年1月1日時点で124,271,318人です。"

License

MIT.

Imports

  • {purrr}
  • {stringr}
  • {stats}
  • {dplyr}