データ分析の中でよく出てくる(例えばこれ)のですが、Pandas のSeriesクラスに用意されているvalue_counts()
を用いたvalue_counts()[0]
みたいなコードの意図がわからないです。
import pandas as pd import numpy as np index = pd.Index([3, 1, 2, 3, 4, np.nan]) print(index.value_counts()[0])
ドキュメントにあるように、上のような簡単なコードを書いて挙動を確かめようとしたのですが、value_counts()[0]
を実行すると下のようなエラーが出てしまいました。
Traceback (most recent call last): File "/Users/m.t./sentiment_analysis/ML_practice/myvenv/lib/python3.9/site-packages/pandas/core/indexes/base.py", line 3361, in get_loc return self._engine.get_loc(casted_key) File "pandas/_libs/index.pyx", line 76, in pandas._libs.index.IndexEngine.get_loc File "pandas/_libs/index.pyx", line 108, in pandas._libs.index.IndexEngine.get_loc File "pandas/_libs/hashtable_class_helper.pxi", line 1533, in pandas._libs.hashtable.Float64HashTable.get_item File "pandas/_libs/hashtable_class_helper.pxi", line 1542, in pandas._libs.hashtable.Float64HashTable.get_item KeyError: 0.0
一方、value_counts()[]
の[]内の数字を1,2,3,4と上げていくと出力は1,1,2,1となったのですが仕組みが理解できてないです。
やったこと
エラー中のlocというのはこちらの記事で、pandasで任意の値を取得するプロパティと書かれていたのですが今回それを使わないでできるのではと思いました。知見をお持ちの方、よろしくお願いいたします。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/10/06 02:08
2021/10/07 01:12