MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment accéder aux objets json intégrés dans un DataFrame Pandas ?

Une solution consiste simplement à le casser avec le constructeur de la série :

In [1]: df = pd.DataFrame([[1, {'a': 2}], [2, {'a': 1, 'b': 3}]])

In [2]: df
Out[2]: 
   0                   1
0  1           {u'a': 2}
1  2  {u'a': 1, u'b': 3}

In [3]: df[1].apply(pd.Series)
Out[3]: 
   a   b
0  2 NaN
1  1   3

Dans certains cas, vous voudrez concat ceci au DataFrame à la place de la ligne dict :

In [4]: dict_col = df.pop(1)  # here 1 is the column name

In [5]: pd.concat([df, dict_col.apply(pd.Series)], axis=1)
Out[5]: 
   0  a   b
0  1  2 NaN
1  2  1   3

Si ça va plus loin, vous pouvez le faire plusieurs fois...