gpt4 book ai didi

python - 使用 Pandas 或 SQL 根据订阅持续时间计算收入?

转载 作者:太空宇宙 更新时间:2023-11-03 20:35:28 24 4
gpt4 key购买 nike

我正在尝试使用包含以下字段的 csv 根据收入计算一些每月业务指标:客户端 ID、订阅开始、订阅持续时间和订阅值(value)。

由于我需要对过去几个月进行比较(例如,如果特定客户的收入减少了),我最初的想法是为每个月创建新列,并根据这些列,使用 panda 来查找值并将它们存储在这些指标的新表中。

你们认为这是最好的方法还是最好尝试使用 SQL 来获取这些指标?

抱歉,如果问题不清楚,我们找不到更好的方法来解释它。

最佳答案

我不确定我是否完全理解您的问题,但看起来您需要一种方法来在客户值的当前日期和过去日期之间进行迭代。

看看这段代码是否可以帮助您:

# example DataFrame
df = pd.DataFrame({'date':[1,2,3,1,2,3],
'client':['c1', 'c1', 'c1', 'c2', 'c2', 'c2'],
'value':[123, 234, 123, 456, 345, 678]})
# Set index to access items faster
df.set_index(['client', 'date'], inplace=True)

# iteract each item
delta = []
for client in df.index.levels[0]:
for date in df.index.levels[1]:
# if the item do not exist on index, nothing happens
try:
current = df.loc[client].loc[date]['value']
# if there isnt past date, delta is zero, but uou can change it
try:
before = df.loc[client].loc[date-1]['value']
delta.append(current - before)
except:
delta.append(0)
except:
pass

df['delta'] = delta
df

关于python - 使用 Pandas 或 SQL 根据订阅持续时间计算收入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57192318/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com