Fichier JSON R

JSON : JavaScript Object NJSON (JavaScript Object Notation).

JSON est une syntaxe pour stocker et échanger des informations textuelles.

JSON est similaire à XML, mais il est plus petit, plus rapide et plus facile à analyser que XML.

Si vous n'êtes pas encore familier avec JSON, vous pouvez d'abord consulter :Tutoriel JSON

Pour lire et écrire des fichiers JSON dans R, vous devez installer un paquet d'extension. Vous pouvez l'installer en saisissant la commande suivante dans la console R :

install.packages("rjson", repos = "https://mirrors.ustc.edu.cn/CRAN/")

Vérifiez si l'installation a réussi :

> any(grepl("rjson",installed.packages()))
[1] TRUE

Créez un fichier sites.json. Le fichier JSON doit être dans le même répertoire que le script de test. Le code est le suivant :

Exemple

{ "id":["1","2","3"], "name":["Google","Example","Taobao"], "url":["www.google.com","www.example.com","www.taobao.com"], "likes":[ 111,222,333] }
Ensuite, nous pouvons utiliser le package rjson pour charger les données depuis le fichier JSON.

Pour afficher les données, utilisez pour une certaine ligne[ ], utilisez pour les lignes et colonnes spécifiées[[ ]]:

Exemple

# Charger le package rjson
library("rjson")

# Obtenir les données JSON
result <- fromJSON(file = "sites.json")

# Afficher le résultat
print(result)

print("===============")

# Afficher le résultat de la 1re colonne
print(result[1])

print("===============")
# Afficher le résultat de la 2e ligne et de la 2e colonne
print(result[[2]][[2]])

L'exécution du code ci-dessus produit la sortie suivante :

$id
[1] "1" "2" "3"

$name
[1] "Google" "Example" "Taobao"

$url
[1] "www.google.com" "www.example.com" "www.taobao.com"

$likes
[1] 111 222 333

[1] "==============="
$id
[1] "1" "2" "3"

[1] "==============="
[1] "Example"

Nous pouvons également utiliser la fonctionas.data.frame()pour convertir les données du fichier JSON en type data frame, ce qui rend plus pratique la manipulation des données :

Exemple

# Charger le package rjson
library("rjson")

# Obtenir les données JSON
result <- fromJSON(file = "sites.json")

# Convertir en data frame
json_data_frame <- as.data.frame(result)

print(json_data_frame)

L'exécution du code ci-dessus produit la sortie suivante :

  id   name            url likes
1  1 Google www.google.com   111
2  2 Example www.example.com   222
3  3 Taobao www.taobao.com   333
Autres extensions