Erreur de sérialisation JSON du tableau NumPy
Lors de la tentative d'enregistrement d'un tableau NumPy en tant que variable de contexte Django, un message d'erreur peut indiquer que le tableau n'est pas JSON sérialisable.
Explication :
JSON, un format de données pour les applications Web, nécessite que les données soient dans une structure spécifique pour une transmission efficace. Les tableaux NumPy, en revanche, ne sont pas intrinsèquement compatibles avec le format JSON, d'où l'erreur.
Solution :
Pour résoudre ce problème et réussir à sérialiser le tableau , convertissez-le dans un format compatible JSON avant de l'enregistrer en tant que variable contextuelle. La méthode ".tolist()" des tableaux NumPy apporte une solution simple :
<code class="python">import numpy as np a = np.arange(10).reshape(2,5) b = a.tolist() # Convert NumPy array to nested lists</code>
Maintenant, la variable b contient les mêmes données dans un format compatible avec la sérialisation JSON. Vous pouvez l'enregistrer en tant que variable de contexte Django sans rencontrer l'erreur de sérialisation.
Notes supplémentaires :
Pour désérialiser la chaîne JSON dans un tableau NumPy, utilisez ce qui suit étapes :
Lire le fichier JSON :
<code class="python">obj_text = codecs.open(file_path, 'r', encoding='utf-8').read()</code>
Charger la chaîne JSON :
<code class="python">b_new = json.loads(obj_text)</code>
Convertissez la liste en tableau NumPy :
<code class="python">a_new = np.array(b_new)</code>
Avec ces étapes, vous pouvez efficacement sérialiser et désérialiser les tableaux NumPy pour stocker et récupérer des données dans les applications Django.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!