ホームページ  >  記事  >  バックエンド開発  >  Python で NumPy 配列を JSON にシリアル化する方法は?

Python で NumPy 配列を JSON にシリアル化する方法は?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-03 14:18:03774ブラウズ

How to Serialize NumPy Arrays to JSON in Python?

NumPy 配列をシリアル化する JSON

Web ページの読み込み中に「配列が JSON シリアル化可能ではありません」というエラーが発生した場合、NumPy がDjango コンテキスト変数の配列は JSON 形式に変換できません。 JSON (JavaScript Object Notation) はデータ交換に使用される一般的なデータ形式であり、データが特定の構造である必要があります。一方、NumPy 配列は、JSON に直接シリアル化できないより複雑な構造を持っています。

この問題を解決するには、NumPy 配列で ".tolist()" メソッドを使用できます。このメソッドは、配列をネストされたリストに変換し、JSON にシリアル化できるようにします。以下に例を示します:

<code class="python">import numpy as np
import codecs, json

a = np.arange(10).reshape(2, 5)  # a 2 by 5 array
b = a.tolist()  # nested lists with the same data and indices

file_path = "/path.json"  ## your path variable
json.dump(b, codecs.open(file_path, 'w', encoding='utf-8'),
          separators=(',', ':'),
          sort_keys=True,
          indent=4) ### this saves the array in .json format</code>

配列を「unjsonify」するには、次のコードを使用できます:

<code class="python">obj_text = codecs.open(file_path, 'r', encoding='utf-8').read()
b_new = json.loads(obj_text)
a_new = np.array(b_new)</code>

以上がPython で NumPy 配列を JSON にシリアル化する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。