我需要根据 Billable 列创建一个新列作为 Billing 和 Non-Billing。如果计费为“是”,那么我应该创建一个新列作为计费,如果它的“否”则需要创建一个新列作为“不可计费”并需要计算它。计算应该在行轴上。
按行计费计算:Billing = df[Billing] * sum/168 * 100
非计费行中的计算:非计费 = df[非计费] * sum/ 168 * 100
数据
Employee Name | Java | Python| .Net | React | Billable|
----------------------------------------------------------------
|Priya | 10 | | 5 | | Yes |
|Krithi | | 10 | 20 | | No |
|Surthi | | 5 | | | yes |
|Meena | | 20 | | 10 | No |
|Manju | 20 | 10 | 10 | | Yes |
输出
我曾尝试使用插入语句,但我无法继续插入它。我也尝试了附加,但它不起作用。
Bill_amt = []
Non_Bill_amt = []
for i in df['Billable']:
if i == "Yes" or i == None:
Bill_amt = (df[Bill_amt].sum(axis=1)/168 * 100).round(2)
df.insert (len( df.columns ), column='Billable Amount', value=Bill_amt )#inserting the column and it name
#CANNOT INSERT ROW AFTER IT AND CANNOT APPEND IT TOO
else:
Non_Bill_amt = (DF[Non_Bill_amt].sum ( axis=1 ) / 168 * 100).round ( 2 )
df.insert ( len ( df.columns ), column='Non Billable Amount', value=Non_Bill_amt ) #inserting the column and its name
#CANNOT INSERT ROW AFTER IT.