下記のコードにおいて
【The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
1000】のエラーが出たのですが、どのあたりに問題があるのか全く見当が付きません。
おおよそこの辺りが怪しいのではないか?という目星などを、経験者の方にお聞きしたいです。
# URL(あらかじめ与えられたcsvファイルのURLを仮に「A.csv」とする url_winequality_data = "A.csv" # 「A.csv」ファイルにある「quality」という列全体に対して、n個のビン分割を行う 分割されたn個のグループに対して、それぞれの平均値を出す 算出されたn個の平均値に対して、最小の平均値と最大の平均値の和を返り値とする関数を作りたい def homework(url_winequality_data, n): df1 = pd.read_csv(url_winequality_data, sep=';') df2 = df1['quality'] df3 = df2.groupby(pd.qcut(df2, n, duplicates = 'drop')).mean() my_result = df3.min() + df3.max() return df3, my_result print(homework(url_winequality_data, 4))
エラー発生時に表示されるスタックトレースを質問文に追記して貰えますか?
(quality
(0.999, 5.0] 4.222222
(5.0, 6.0] 5.996403
(6.0, 7.0] 7.000000
(7.0, 9.0] 8.525424
(9.0, 10.0] 10.000000
(10.0, 12.0] 11.559701
(12.0, 14.0] 13.467290
(14.0, 15.0] 15.000000
(15.0, 17.0] 16.495868
(17.0, 19.0] 18.458824
(19.0, 21.0] 20.577465
(21.0, 25.0] 23.535714
(25.0, 29.0] 27.345794
(29.0, 34.0] 31.942529
(34.0, 72.0] 42.331522
Name: quality, dtype: float64, 46.55374396135266)
【ERROR】
The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
1000
N=16の時です。
スタックトレースとはこの部分の表記で宜しいでしょうか…?
エラーが発生した場所のファイルパスと行番号が表示されている部分です。
なるほどです…
少し説明がごちゃごちゃになるかもしれませんが
①上記の関数は、GoogleColaboratoryでは正しく動く
②しかし、課題提出用のサイトに入力すると、上記のようなERRORが出てくる
なので、エラーが発生した場所のファイルパスや行番号が分からないんです…
私も手元の環境で色々とデータを変えて試してみたのですが、同様のエラーが発生しないのです。考えられるのは、その課題提出用のサイトで使用している Pandas のバージョンが古いのかもしれません。出題者の方に問い合わせてみてはどうでしょうか。
お手数をおかけして申し訳ありません…
一度問い合わせてみようと思います。
とても助かりました!ありがとうございました!
回答1件
あなたの回答
tips
プレビュー