在pandas数据框中逐行计算CAGR(Compound Annual Growth Rate)可以通过以下步骤实现:
df['CAGR'] = 0.0
来初始化这一列。df.iterrows()
遍历数据框中的每一行。这将返回一个包含索引和行数据的元组。index, row = row_data
来解包元组。(结束值/开始值)^(1/年数) - 1
。这里的年数可以根据实际情况进行调整。df.at[index, 'CAGR'] = cagr_value
来赋值。下面是一个示例代码:
import pandas as pd
# 创建一个示例数据框
data = {'开始值': [100, 200, 300],
'结束值': [150, 250, 350]}
df = pd.DataFrame(data)
# 创建'CAGR'列并初始化为0.0
df['CAGR'] = 0.0
# 遍历数据框中的每一行
for index, row in df.iterrows():
# 获取当前行的数据
start_value = row['开始值']
end_value = row['结束值']
# 计算CAGR值
cagr_value = (end_value / start_value) ** (1 / 3) - 1
# 将CAGR值赋给当前行的'CAGR'列
df.at[index, 'CAGR'] = cagr_value
# 打印计算后的数据框
print(df)
这个示例代码中,我们假设年数为3,计算每一行的CAGR值,并将结果存储在'CAGR'列中。你可以根据实际情况进行调整。
领取专属 10元无门槛券
手把手带您无忧上云