python – 在Pandas中有一种方法可以在dataframe.apply中使用之
发布时间:2020-12-20 10:32:47 所属栏目:Python 来源:网络整理
导读:我有以下数据帧: Index_Date A B C D =============================== 2015-01-31 10 10 Nan 10 2015-02-01 2 3 Nan 22 2015-02-02 10 60 Nan 280 2015-02-03 10 100 Nan 250 要求: Index_Date A B C D =============================== 2015-01-31 10 10
我有以下数据帧:
Index_Date A B C D =============================== 2015-01-31 10 10 Nan 10 2015-02-01 2 3 Nan 22 2015-02-02 10 60 Nan 280 2015-02-03 10 100 Nan 250 要求: Index_Date A B C D =============================== 2015-01-31 10 10 10 10 2015-02-01 2 3 23 22 2015-02-02 10 60 290 280 2015-02-03 10 100 3000 250 C列是根据D的值得出2015-01-31. 然后我需要使用C的值2015-01-31并乘以2015-02-01的A值并添加B. 我已尝试使用if else进行应用和移位,这会产生一个关键错误. 解决方法
首先,创建派生值:
df.loc[0,'C'] = df.loc[0,'D'] 然后迭代剩余的行并填充计算的值: for i in range(1,len(df)): df.loc[i,'C'] = df.loc[i-1,'C'] * df.loc[i,'A'] + df.loc[i,'B'] Index_Date A B C D 0 2015-01-31 10 10 10 10 1 2015-02-01 2 3 23 22 2 2015-02-02 10 60 290 280 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |