comment charger un json dans une pandas dataframe?
Je suis à l'aide d'un REST API
pour obtenir un json
fichier comme suit:
import urllib2
import pandas as pd
import numpy as np
import requests
request='myrequest'
data= requests.get(request)
json=data.json()
df=pd.DataFrame(json)
et le dataframe ressemble
items
0 {u'access': u'all', u'count': 501, u'time': 2014}
1 {u'access': u'all', u'count': 381, u'time': 2015}
Comment puis-je transformer cette seule colonne (qui ressemble à un dictionnaire) dans les colonnes appropriées dans les Pandas?
MODIFIER
les premières données json ressemble à ceci
{
"items": [
{
"access": "all",
"count": 200,
"time": 2015
},
{
"access": "all",
"count": 14,
"time": 2015
},
]
}
Merci!
Il suffit de charger JSON dans un dictionnaire avant de le convertir à un DataFrame.
merci! comment puis-je le faire?
Pouvez-vous ajouter votre fichier exemple? Je vais poster une réponse.
Pouvez-vous essayer?
merci! comment puis-je le faire?
Pouvez-vous ajouter votre fichier exemple? Je vais poster une réponse.
Pouvez-vous essayer?
pd.DataFrame(json['items'])
(Il serait mieux si vous n'avez pas le nom de ce dictionnaire 'json', comme il est un nom de module que vous utilisez.)OriginalL'auteur | 2016-05-22
Vous devez vous connecter pour publier un commentaire.
pd.read_json(json_str)
Ici est la Les Pandas de la documentation.
EDIT:
Pour une liste de json str vous pouvez aussi simplement:
Vous pouvez partager des données brutes?
Si
json
est une liste, vous devezread_json
pour chaque élément de cette liste. L'entrée deread_json
devrait être unstr
.Je n'ai que json.charge, quels sont les arguments passés pour fonction map?
Qu'est-ce que
json_lst
?OriginalL'auteur Lifu Huang
Bien, il me semble que JSON importation de nidification contenant toutes les variations des dicts et de la liste, tandis que les Pandas besoin que d'un seul dict collection avec itérable éléments. Par conséquent, vous devez faire un peu de conversion, si elles ne correspondent pas à.
En supposant que je interpréter la structure de votre JSON correctement (et je ne pourrais pas car, vous l'impression que le produit final, et non pas la structure JSON), on dirait que c'est une liste de dictionnaires. Si c'est le cas, voici la solution:
Edit:
Les valeurs sont fournies, pour obtenir mon code de travail, vous avez juste besoin de ce qui suit en avant:
Je pense que cela devrait fonctionner, mais il dépend de la façon dont les demandes de processus JSON. Donnez-moi une copie de l'
json
objet si cela ne fonctionne pas.OriginalL'auteur jonathf