PythonでNumPy配列ndarrayを辞書に変換する

PythonでNumPy配列ndarrayを辞書に変換してみます。

■Python

今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認)

■NumPy配列ndarrayを辞書に変換する

では、早速NumPy配列ndarrayを辞書に変換するスクリプトを書いていきます。

■コード

import numpy as np

array_test = np.array([['田中','佐藤','杉元'],
                       ['村山','岡本','松本'],
                       ['山内','竜崎','三澤']])

dictionary = dict(enumerate(array_test.flatten(),1))             

print(array_test)
print(type(array_test))

print("\n")
print(dictionary)
print(type(dictionary))

NumPy配列ndarrayを辞書に変換するためには、今回array_testという変数を作成し、その中で、np.array()を使用し、NumPy配列の作成します。配列の要素には今回文字列を入れて、格納します。

格納後、dictionaryという変数を作成し、その中で、array_test変数に格納したNumPy配列に対して、flatten()関数を使用し、NumPy配列を1次元配列に変換します。変換し、enumerate()関数を使用し、インデックス番号と変換した1次元配列の要素を取り出します。この時に括弧内の第2の引数で、取り出した1次元配列の要素のインデックスを「1」から割り当てるように変更します。

なお、enumerate()関数を使用すると、デフォルトでは、インデックス値は「0」から始まります。

そして最後に、dict()関数を使用し、取り出した要素を辞書に変換し、格納します。

最後に、array_testという変数と、dictionaryという変数の情報をprint関数で出力します。また、辞書に変換されているか確認するため、type()関数を使用し、型の取得と出力を行います。

■実行

このスクリプトを「np_array_d.py」という名前で保存し、コマンドプロンプトから実行してみます。

実行してみると、今回作成したNumPy配列が、辞書に変換されて出力されました。型も「<class ‘numpy.ndarray’>(多次元配列型)」から「<class ‘dict’>(辞書型)」に変更されていることが確認できました。

コメント

タイトルとURLをコピーしました