我用R製作詞頻表,首選的輸出格式是JSON文件。就像 { 「word」:「狗」, 「頻率」:12 } 有什麼辦法可以直接將表格保存爲這種格式嗎?我一直在使用write.csv()函數並將輸出轉換爲JSON,但這非常複雜且耗時。是否可以在R中以JSON格式將表寫入一個文件?
回答
set.seed(1)
(tbl <- table(round(runif(100, 1, 5))))
## 1 2 3 4 5
## 9 24 30 23 14
library(rjson)
sink("json.txt")
cat(toJSON(tbl))
sink()
file.show("json.txt")
## {"1":9,"2":24,"3":30,"4":23,"5":14}
甚至更好:
set.seed(1)
(tab <- table(letters[round(runif(100, 1, 26))]))
a b c d e f g h i j k l m n o p q r s t u v w x y z
1 2 4 3 2 5 4 3 5 3 9 4 7 2 2 2 5 5 5 6 5 3 7 3 2 1
sink("lets.txt")
cat(toJSON(tab))
sink()
file.show("lets.txt")
## {"a":1,"b":2,"c":4,"d":3,"e":2,"f":5,"g":4,"h":3,"i":5,"j":3,"k":9,"l":4,"m":7,"n":2,"o":2,"p":2,"q":5,"r":5,"s":5,"t":6,"u":5,"v":3,"w":7,"x":3,"y":2,"z":1}
然後用http://www.jsonlint.com/驗證它變得相當格式。如果你有多維表,你必須解決它有點...
編輯:
哦,現在我明白了,你想要的數據集特性沉-ED的JSON文件。沒問題,只要給我們一個樣本數據,我會稍微處理一段代碼。實際上,您需要將數據轉換爲理想的格式,然後將其轉換爲JSON。 list
就足夠了。給我一下,我會更新我的答案。
編輯#2: 好了,時間是相對的......這是一個常識......在這裏你去:
(dtf <- structure(list(word = structure(1:3, .Label = c("cat", "dog",
"mouse"), class = "factor"), frequency = c(12, 32, 18)), .Names = c("word",
"frequency"), row.names = c(NA, -3L), class = "data.frame"))
## word frequency
## 1 cat 12
## 2 dog 32
## 3 mouse 18
如果dtf
是一個簡單的數據幀,是的,data.frame,如果它不是,脅迫它!長話短說,你可以這樣做:
toJSON(as.data.frame(t(dtf)))
## [1] "{\"V1\":{\"word\":\"cat\",\"frequency\":\"12\"},\"V2\":{\"word\":\"dog\",\"frequency\":\"32\"},\"V3\":{\"word\":\"mouse\",\"frequency\":\"18\"}}"
不過,我覺得我需要一些melt
與這一個,但簡單t
的伎倆。現在,您只需在轉置data.frame後處理列名。 t
強制data.frames到矩陣,所以你需要將它轉換回data.frame。我使用了as.data.frame
,但您也可以使用toJSON(data.frame(t(dtf)))
- 您將獲得X而不是V作爲變量名稱。或者,您可以使用regexp來清理JSON文件(如果需要),但這是一個糟糕的做法,嘗試通過準備data.frame來解決它。
我希望這有助於有點...
非常感謝!你的回答幫了我:D – txxwq 2010-08-31 14:39:32
RJSONIO是一包「允許轉換和從以JavaScript對象符號(JSON)格式的數據。」您可以使用它將對象導出爲JSON文件。
library(RJSONIO)
writeLines(toJSON(anobject), "afile.JSON")
- 1. 以Json格式寫入文件?
- 2. iOS 5:是否可以將一個結構寫入plist文件?
- 3. Python - 以表格格式寫入文件
- 4. 是否可以在放入apk文件中寫入文件?
- 5. 是否可以在message.properties文件中編寫表達式?
- 6. Python以列表格式寫入文件
- 7. 是否可以將3個表格數據導入到一個表格中
- 8. 以正確的格式在JSON文件中寫入數據JAVA
- 9. 以json格式將數據寫入js文件?
- 10. 是否可以將數據寫入本地json文件中,但只有角?
- 11. 是否可以在文件中寫入彩色文本?
- 12. 將數據寫入文本文件以表格的形式
- 13. 將JSON寫入文件 - 格式錯誤?
- 14. 可以將BufferedImage寫入文件的任何格式嗎?
- 15. 是否可以在Silverlight ContentPresenter中嵌入文本格式?
- 16. 是否可以將控件放入另一個控件中?
- 17. 如何檢查是否可以將文件寫入目錄?
- 18. 是否可以將soap消息寫入xml文件?
- 19. R - ReporteRs包。是否可以將條件格式應用於文本?
- 20. 是否可以編寫一個批處理文件在Windows
- 21. 是否可以使用Extjs4將數據寫入JSON?
- 22. 在Python中,是否可以將生成器(context_diff)輸出寫入文本文件?
- 23. 是否可以鎖定一個存儲桶以便寫入?
- 24. 是否可以將自旋文本以XML格式存儲?
- 25. 是否可以讀取和寫入文件只打開一次?
- 26. 是否可以將多個數據類型放入JSON文件中?
- 27. 在Oracle中,是否可以將一列插入表中?
- 28. 以CSV格式寫入文件
- 29. 是否可以在Eclipse中格式化打開的文件?
- 30. 是否可以在iPhone中以編程方式將多個PDF文件合併爲一個PDF文件?
install.packages(「fortunes」); require(fortunes); fortune(which =「Evelyn」) – fmark 2013-03-09 14:52:58