我想应用自定义CDF功能。我知道熊猫中有.cumsum(),但我不想使用它。
df = pd.DataFrame({'name':['a','a','a','a','b','b','b','c','c','c','c','c'],'val':['0.00','0.02','0.03','0.04','0.00','0.06','0.07','0.00','0.09','0.10','0.11','0.12']})
然后,我想在下面表演。
步骤1 为一个': 用0.02除以0.09,其中(0.02 + 0.03 + 0.04)= 0.09
将获得0.22,然后放入一个名为“ val2”的新列
第2步
将0.03除以0.09(与上述相同)再加上0.22
例如0.03 / 0.09 + 0.22 = 0.5533,然后将此值放入“ val2”列
..然后继续到'a'
第3步
对于“ b” 用0.06除以0.13,其中(0.06 + 0.07)= 0.13
将获得0.46,并将其存储在“ val2”中
步骤4 然后,将0.07除以0.13,再加上0.13
.. 0.07 / 0.13 + 0.46
将获得0.99并存储在“ val2”中
我这里有一半代码。
def myfunc1(myseries):
return myseries
df['val2'] = df['val'].apply(lambda x: x if x == 0.00 else myfunc1(x))
需要您的帮助。
谢谢