《R數據科學實戰:工具詳解與案例分析 》 —1.7 jsonlite—JSON文件
1.7 jsonlite—JSON文件

javaScript Object Notation(JSON)通常是作為不同語言之間互相交流信息的文件,JSON文件不但節省存儲空間,其簡潔明了的形式也很容易理解。jsonlite包既能夠完整地將JSON格式的文件完整地解析和讀取到R語言中來,也可以將任何常見的R對象(object)輸出成JSON格式。在1.6節中,toJSON函數可用來將PDF文檔目錄轉換成JSON格式,以便于理解各層級之間的關系。
讀取JSON文件的fromJSON函數共包含6個參數,通常情況下,除了指定文件路徑之外,其他參數使用默認設置即可。表1-17中列出了該函數的參數及功能描述。
表1-17 數據導入函數fromJSON參數詳解
首先以JSON常見的數組形式創建一個字符串向量,保存為example。中括號代表數組的起始,雙引號中代表值,值與值之間以逗號進行分隔,然后再用單引號將這一數組格式保存到字符串向量中。因為example中的數組是按照JSON格式輸入的,所以直接使用fromJSON函數即可。在默認的參數設置下,可以得到一個包含4個值的R對象—字符串向量。運行fromJSON前后的這兩個字符串向量,雖然名字一樣,但內容完全不同,感興趣的讀者可以單獨運行example來對比其區別所在。formJSON示例代碼如下:
> example <-? '["a", "b", 0, "c"]'
> fromJSON(example)
## [1] "a" "b" "0" "c"
當參數simplifyVector被指定為假時,返回結果為一個包含4個元素的列表。4個元素即代表共有4個值,每一個值都以列表的形式返回。當JSON格式的原始數據文件有多重嵌套時,可以通過設置參數來查看數據結構和正確讀取數據。不過,一般情況下還是建議讀者使用非嵌套數據來練習和使用R語言與JSON格式數據進行交互,待有一定了解后再提高難度。返回結果如下:
> fromJSON(example,simplifyVector = F)
## [[1]]
## [1] "a"
##
## [[2]]
## [1] "b"
##
## [[3]]
## [1] 0
##
## [[4]]
## [1] "c"
JSON 數據挖掘
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。