【发布时间】:2022-01-10 17:17:47
【问题描述】:
我有一个这样的熊猫数据框:
| Transaction | Transaction Amount |
|---|---|
| Deposit | 10.00 |
| Dividend | 0.9 |
| Taxes | 0.04 |
我正在应用这样的列表理解:
df['Tax'] = ['0' if i == "Deposit" or i == "Dividend" else df['Transaction Amount'] for i in df['Transaction']]
df['Net Amount'] = [df['Transaction Amount'] if i == "Deposit" or i == "Dividend" else -1 * df['Tax'] for i in df['Transaction']]
但是,对于这两种情况,我都会得到如下奇怪的输出:“0 1.00 1 1000.00 2 1000.00 3...”
Transaction Amount 是一个 float64,我尝试将其设为字符串,看看是否能解决问题,但我一直得到相同的结果。
【问题讨论】:
-
请您提供一个包含您期望的输出的数据框吗?
-
伙计,'0' 是一个字符串。
标签: python pandas dataframe list-comprehension