Skip to main content
 首页 » 编程设计

python之循环一列并填充函数 Pandas Dataframe Python 中的行

2025年05月04日18cyq1162

我正在尝试遍历数据帧。特别是通过日期列,这意味着对于每个日期,我都会得到该日期的 x、y 和 z 值,并将其填充到我定义的函数中。不知何故,我不确定如何正确调用它。我的代码如下所示:

import pandas as pd 
 
def calc_funct(x, y, z): 
 
    func = x*y*z 
 
    return func 
 
if __name__ == '__main__': 
 
    df = pd.read_csv('C:/Data.csv') 
 
    for column in df: 
 
        results = calc_funct(df['x'], df['y'], df['z']) 
        print(result) 

输入如下所示:

           date   x   y   z 
    0  2017-11-11  18  17   7 
    1  2017-11-11  16  19   3 
    2  2017-11-11  13  14   2 
    3  2017-11-11  12  13   1 
    4  2017-11-11  11  12   9 
    5  2017-11-11  10  11  10 
    6  2017-11-11  21  10  11 
    7  2017-11-12  13  19  12 
    8  2017-11-13  18  17  12 
    9  2017-11-14   9  10  20 
   10  2017-11-15   2  20  13 
   11  2017-11-18  13  13   9 
   12  2017-11-19  18  14  16 
   13  2017-11-20  14  11  19 
   14  2017-11-21  18  15  19 

对于日期 2017-11-11,我会计算值(例如,在该日期添加/减去所有值)并存储它,例如在列表中。然后迭代下一个日期 2017-11-12 等...

请您参考如下方法:

在 pandas 中,您可以使用 apply 方法。

df.apply(lambda v : calc_funct(v["x"], v["y"], v["z"]), axis=1) 

注意 axis=1 用于迭代行,axis=0 用于迭代列。