ndarrayの配列をPython標準のリストへ変換する方法です。
tolist
tolistを用いると既存のndarrayをリストへ変換することができます。
import numpy na = numpy.array([[1, 10, 100], [2, 20, 200]]) na_list = na.tolist() print(type(na)) print(na) print('-----------------------') print(type(na_list)) print(na_list)
<pre class="result"> <class 'numpy.ndarray'> [[ 1 10 100] [ 2 20 200]] ----------------------- <class 'list'> [[1, 10, 100], [2, 20, 200]]
標準のlist()との相違点
tolistは多次元配列でもすべてリストへ変換されます。それに対しlist()は内包する配列はリストへ変換されず、ndarrayのままです。
import numpy na = numpy.array([[1, 10, 100], [2, 20, 200]]) na_list_1 = na.tolist() na_list_2 = list(na) print(type(na_list_1)) print(type(na_list_1[0])) print(na_list_1) print('-----------------------') print(type(na_list_2)) print(type(na_list_2[0])) print(na_list_2)
<class 'list'> <class 'list'> [[1, 10, 100], [2, 20, 200]] ----------------------- <class 'list'> <class 'numpy.ndarray'> [array([ 1, 10, 100]), array([ 2, 20, 200])]