Python

【Python】NumPyのndarrayで末尾の要素を取得する方法

numpyのndarrayで末尾の要素を取得するにはどうすればいいのか

Pythonで配列を扱う際によく使われるライブラリ NumPy

配列の各要素には番号を使ってアクセスすることができるが、要素数が固定でない配列の最後の要素にはどうやって参照すればよいのか。

そこで今回はNumPyのndarrayで末尾の要素を取得する方法について紹介する。

この記事を書いている人


システムエンジニア、AIエンジニアと、IT業界で10年以上働いている中堅。PythonとSQLが得意。

記事を読むメリット

NumPyのndarrayで末尾の要素を取得する方法がわかる


NumPyのndarrayで末尾の要素を取得する方法

NumPyのndarrayで末尾の要素を取得する方法を説明する前に、まずはデータを準備する。

import numpy as np

data_list = [
    [1,2,3,4]
    ,[5,6,7,8]
    ,[9,10,11,12]
]

np_list = np.array(data_list)


↑ではlistで定義した配列を np.array() でnumpyのndarrayに変換している。

各要素は番号を使って取得する。

print(np_list[0,0])
# 1
print(np_list[1,2])
# 7
print(np_list[2,3])
# 12


最後の要素、取得できてるじゃん
これは3x4の配列ってわかってますからね
サイズがわからない場合は違う方法があります


配列のサイズがわかっていればサイズの値をそのまま入れれば末尾の要素は取得できる。

しかしサイズが不定の場合に同じことをしようとすると、サイズを取得する為に1手間発生してしまう。

しかし実はサイズがわからなくても末尾の要素は取得できる。

-1 番目の要素にアクセスすれば良い。

print(np_list[-1,-1])
# 12


このようにマイナスの番号で配列要素にアクセスすると末尾から参照される。

この場合は 最初の -1 で3行目、2つ目の -1 で4列目を参照している。

ちなみに -2 とすれば最後から2つ目の要素を取得できる。

print(np_list[-1,-2])
# 11



要素数を調べなくてもいいのは楽だね
だけどそもそも何でNumPy使うの?
理由としてはNumPyはCで動いてるので処理が早いんですよね



一度きりの計算であれば手元で処理を実行すればよいが、もし定期的に処理を実行しようと思うと開発マシンとは別に実行環境を用意する必要がある。

クラウド環境を使う方法もあるが、安価な小型マシンを用意するとランニングコストが抑えられるので検討すると良いかも知れない。

役に立ったらシェアしてくれると励みになります。

にほんブログ村 IT技術ブログへ

-Python
-

Translate »

© 2021 ITips