お世話になっております。
お忙しいところ大変恐縮ですが、ご教示頂けますと幸いでございます。
下記のようなデータフレームがあるとして
|名前 |購入ID|初回購入ID|
|ぱんだ| 0001| 0001|
|うさぎ| 0002| 0002|
|ぞう | 0003| 0003|
|たぬき| 0004| 0004|
|ぱんだ| 0005| 0001|
|わに | 0006| 0006|
購入IDと初回購入IDが一致するときに”新規”それ以外は”既存”を返したいと考えております。
返す列は新しく作成します。
|名前 |購入ID|初回購入ID|新規既存
|ぱんだ| 0001| 0001| 新規
|うさぎ| 0002| 0002| 新規
|ぞう | 0003| 0003| 新規
|たぬき| 0004| 0004| 新規
|ぱんだ| 0005| 0001| 既存
|わに | 0006| 0006| 新規
試したコードは下記となります。
1つ目
python
1if df["初回購入ID"] == df["購入ID"]: 2 df["新規既存"] = "新規" 3else: 4 df["新規既存"] = "既存"
結果↓
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
2つ目
python
1if df["初回購入ID"] == df["購入ID"]: 2 result = "新規" 3else: 4 result = "既存" 5 6df["新規既存"] = result
結果↓
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
何か根本的に間違えてる気がします。。
大変恐縮ですが、ご教示頂けますと幸いでございます。
何卒、よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/18 07:54