果物の売上と前年売上のデータがあります。
各商品毎に売上と前年売上の数字を見に行き、売上or前年売上のどちらかが0円より低い数字の場合、合計列に「*」を入れる。
どちらも0円以上の場合は売上/前年売上の計算をして前年比を出したいです。
for文使う必要もあると思いましたが検討がつきません。
今回のケースでいうと「りんご」「なし」「いちご」は前期比がでて、他は「*」が入るイメージです。
またif分の箇所で「The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().」というエラーがでます。
どのように改善すればよいのでしょうか?よろしくお願い致します。
import pandas as pd df = pd.DataFrame( data={'商品':["りんご","なし","いちご","みかん","ぶどう","レモン"], '売上':[10,20,30,40,-10,-20], '前期売上':[50,20,50,-10,30,-10]} ) if df[(df['売上'] >=0 & df['前期売上'] >=0)]: df['前期比'] = df['売上'] / df['前期売上'] df['前期比'].astype(str) else: df['前期比'] = "*"
使っているツールのバージョンなど補足情報
Windows10
python3.9 64bit
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/11/14 13:31