首页 > 解决方案 > 逐行计算

问题描述

愚蠢的问题,但我对 Python 有点生疏。所以我写了以下代码:

df = pd.read_csv(mypath )
for index, row in df.iterrows():
    if row['Age'] < 2:
        Total = row['Input'] * 1.2
    elif row['Age'] > 8:
        Total = row['Input'] * 1.1
    else:
        Total = row['Input'] * 0.9
    print(Total)

我有一张表,我正在寻找使用每行变量的一些简单计算。

示例表:

Input     Age     Total
-----------------------
100       5       
150       3 

所以,现在我想知道如何取每一行,做我的计算,然后把它写在我的总数上(每一行)。例如,第一行的总数应该是 90。

标签: python

解决方案


您可以使用应用方法

def age_total(x):
    if x < 2:
        return * 1.2
    elif x > 8:
        return x * 1.1
    else:
        return x * 0.9

df['Total']= df['age'].apply(age_total)

推荐阅读