将规则应用于pandas中的列

时间:2016-03-15 06:54:48

标签: python pandas

我的问题很快。是否有更快的方法来替换“for”循环?我想应用“if”语句来扩展数据。 ......如下。 “for”循环太慢了。我需要填充其他更复杂的逻辑,所以要理解任何系统的方法来解决它。

import pandas as pd
import numpy as np

s = pd.DataFrame(index=[np.arange(0,201,1)], columns=['myval'])
for i in s.index:
    if 0<=i<=50:
        s.myval[i] = s.myval[i-1] * 1.05 if i > 0 else 3
    else:
        s.myval[i] = (10 - s.myval[i-1]) * 0.8 + 10 * 0.2

1 个答案:

答案 0 :(得分:0)

您可以应用elementwise-python-funciton - 内置功能的pandas。

以下是文档Pandas element wise operation