Introduction to JSON Files in R
A JSON file stores simple data structures and objects in JavaScript Object Notation (JSON) format. JSON is a standard data lightweight interchange format primarily used for transmitting data between a web application and a server. The JSON file is a text file that is language-independent, self-describing, and easy to understand. In this article, we will discuss reading and writing a JSON file in R Language in detail using the R package “rjson
“.
Table of Contents
Since JSON file format is text only, it can be sent to and from a server and used as a data format by any programming language. The data in the JSON file is nested and hierarchical. Let us start reading and writing JSON files in R.
Creating JSON File
Let’s create a JSON file. Copy the following lines into a text editor such as Notepad. Save the file with a .json extension and choose the file type as all files(*.*). Let the file name be “data.json”, stored on the “D:” drive.
{ "ID":["1","2","3","4","5","6","7","8" ], "Name":["Rick","Dan","Michelle","Ryan","Gary","Nina","Simon","Guru" ], "Salary":["623.3","515.2","611","729","843.25","578","632.8","722.5" ], "StartDate":[ "1/1/2012","9/23/2013","11/15/2014","5/11/2014","3/27/2015","5/21/2013", "7/30/2013","6/17/2014"], "Dept":[ "IT","Operations","IT","HR","Finance","IT","Operations","Finance"] }
Installing rjson R Package
The R language can also read the JSON files using the rjson
package. To read a JSON data file, First, install the rjson
package. Issue the following command in the R console, to install the rjson
package.
install.packages("rjson")
The rjson
package needs to be loaded after installation of the package.
Reading JSON Files in R
To read a JSON file, the rjson package needs to be loaded. Use the fromJSON( )
function to read the file.
# Give the data file name to the function. result <- fromJSON(file = "D:\\data.json")
# Print the result. print(result)
The JSON file now can be converted to a Data Frame for further analysis using the as.data.frame()
function.
# Convert JSON file to a data frame. json_data_frame <- as.data.frame(result)
print(json_data_frame)
Writing JSON
objects to .Json
file
To write JSON Object to file, the toJSON()
function from the rjson
library can be used to prepare a JSON object and then use the write()
function for writing the JSON object to a local file.
Let’s create a list of objects as follows
list1 <- vector(mode="list", length=2) list1[[1]] <- c("apple", "banana", "rose") list1[[2]] <- c("fruit", "fruit", "flower")
read the above list to JSON
jsonData <- toJSON(list1)
write JSON object to a file
write(jsonData, "output.json")
Read more about importing and exporting data in R: see the post