使用環境
- OS:Windows 10 Pro(バージョン:20H2)
- 言語:Python(pandasライブラリ)
経緯
Pythonでプログラムを作成している際、concat()
を使ってDataFrameを結合しようとしたところ、エラーが発生しました。
エラーの原因を調査するため、DataFrameの行数を数えてデータ数が揃っているかを確認する必要が出てきました。
Shape()は使えなかった
まず最初に、直感的に**shape()
**を使おうと考えました。
しかし、実行してみたところエラーが発生し、うまくいきませんでした。
※正確には、shape
は関数ではなく属性なので、括弧 ()
をつけずに使う必要があります。
つまり、正しくは
pythonコピーする編集するdf.shape
と記述します。
このshape
を使うと、(行数, 列数)のタプルが返されますが、今回は単純に行数だけが欲しかったため、別の方法を考えました。
解決方法:len()を使う
結局、一番簡単な方法は、len()
関数を使うことでした。
コード例
pythonコピーする編集するprint(len(df))
これで、DataFrameの行数だけをシンプルに取得することができました。
非常に直感的で、余計な情報に惑わされることもありません。
注意点
shape
はタプル(行数, 列数)を返す属性です。len(df)
は、行数のみを返すため、手軽に行数チェックをしたいときに最適です。
また、列数を確認したい場合は、df.shape[1]
で取得できます。
まとめ
PythonでDataFrameの行数を確認するには、**len()
**を使うのが簡単で確実です。
特にconcat()
などでデータを結合する際には、
データ数(行数)が一致しているか事前に確認することが重要です。
これにより、不要なエラーを未然に防ぐことができます。
これからも、結合や結帳前にはデータ数チェックを忘れずに行っていきたいと思います。
ここまでお読みいただき、誠にありがとうございました。