我有以下建议:
quantity#1 unit price#1 line amount#1 line amount#2 line amount#3 line amount#4 VAT
-- ------------ -------------- --------------- --------------- --------------- --------------- -----
0 nan nan 5 nan nan nan 1.05
2 1 1150.5 10 20 30 nan 6.6
6 1 2458 2458 nan nan nan 0
13 1 1689 10 20 30 nan 5.4
17 1 260 260 30 100 75 73.05
从这个DF中,我想从每个特定行的税率中提取税率。应动态计算税率行项目,以便每行金额乘以某个税率,合计增值税金额。税率可以是0.09、0.21和0.00,并且应该等于增值税(BTW)子集。我尝试了以下方法:
x = [0.09, 0.21, 0.00]
for i,row in df.iterrows():
if row['Document Type'] == 0:
df['line amount'[i]] * x == df['BTW']
然而,这是行不通的
期望输出:
quantity#1 unit price#1 line amount#1 line amount#2 line amount#3 line amount#4 VAT
-- ------------ -------------- --------------- --------------- --------------- --------------- -----
0 nan nan 5 nan nan nan 1.05
2 1 1150.5 10 20 30 nan 6.6
6 1 2458 2458 nan nan nan 0
13 1 1689 10 20 30 nan 5.4
17 1 260 260 30 100 75 73.05
#new columns
taxrate#1 taxrate#2 taxrate#3 taxrate #4
-- ------------ -------------- --------------- ---------------
0 0.21 nan nan nan
2 0.21 0.09 0.09 nan
6 0.00 nan nan nan
13 0.09 0.09 0.09 nan
17 0.21 0.09 0.09 0.09
请帮忙
每行有3种不同的税率和4行金额,因此可以是3**4=81组合之一。我们可以计算每个组合的总增值税,然后从数据框中找到与增值税匹配的组合:
输出:
相关问题 更多 >
编程相关推荐