99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
2018-11-04 閱讀量: 1009
解析數(shù)值

解析數(shù)值似乎是非常直截了當(dāng)?shù)?,但以?3 個(gè)問題增加了數(shù)值解析的復(fù)雜性。

? 世界各地的人們書寫數(shù)值的方式不盡相同。例如,有些國(guó)家使用 . 來分隔實(shí)數(shù)中的整數(shù)

和小數(shù)部分,而有些國(guó)家則使用 ,。

? 數(shù)值周圍經(jīng)常有表示某種意義的其他字符,如 $1000 或 10%。

? 數(shù)值經(jīng)常包含“分組”,以便更易讀,如 1 000 000,而且世界各地用來分組的字符也不

盡相同。

為了解決第一個(gè)問題, readr 使用了“地區(qū)”這一概念,這是可以按照不同地區(qū)設(shè)置解析選

項(xiàng)的一個(gè)對(duì)象。在解析數(shù)值時(shí),最重要的選項(xiàng)就是用來表示小數(shù)點(diǎn)的字符。通過創(chuàng)建一個(gè)

新的地區(qū)對(duì)象并設(shè)定 decimal_mark 參數(shù),可以覆蓋 . 的默認(rèn)值:

parse_double("1.23")
#> [1] 1.23
parse_double("1,23", locale = locale(decimal_mark = ","))
#> [1] 1.23

readr 的默認(rèn)地區(qū)是 US-centric,因?yàn)?R 是以美國(guó)為中心的(也就是說, R 基礎(chǔ)包的文檔是

用美式英語寫成的)。獲取默認(rèn)地區(qū)設(shè)置的另一種方法是利用操作系統(tǒng),但這種方法很難

奏效,更重要的是,這會(huì)讓你的代碼很脆弱:即使可以在你的計(jì)算機(jī)上良好運(yùn)行,但通過

電子郵件分享給另一個(gè)國(guó)家的同事時(shí),就可能失效。

parse_number() 解決了第二個(gè)問題:它可以忽略數(shù)值前后的非數(shù)值型字符。這個(gè)函數(shù)特別

適合處理貨幣和百分比,也可以提取嵌在文本中的數(shù)值:

parse_number("$100")
#> [1] 100
parse_number("20%")
#> [1] 20
parse_number("It cost $123.45")
#> [1] 123

組合使用 parse_number() 和地區(qū)設(shè)置可以解決最后一個(gè)問題,因?yàn)?parse_number() 可以忽

略“分組符號(hào)”:

# 適用于美國(guó)

parse_number("$123,456,789")
#> [1] 1.23e+08

# 適用于多數(shù)歐洲國(guó)家

parse_number(
"123.456.789",
locale = locale(grouping_mark = ".")
)
#> [1] 1.23e+08
# 適用于瑞士
parse_number(
"123'456'789",
locale = locale(grouping_mark = "'")
)
#> [1] 1.23e+08
0.0000
3
關(guān)注作者
收藏
評(píng)論(0)

發(fā)表評(píng)論

暫無數(shù)據(jù)
推薦帖子