按行进行SUMIF和DATEDIF
创始人
2024-08-22 03:30:12
0

以下是一个按行进行SUMIF和DATEDIF的解决方法的代码示例:

import pandas as pd
from datetime import datetime

# 创建示例数据
data = {'Name': ['John', 'Emily', 'James', 'Amy'],
        'Start Date': ['2022-01-01', '2022-02-01', '2022-03-01', '2022-04-01'],
        'End Date': ['2022-01-31', '2022-02-28', '2022-03-31', '2022-04-30'],
        'Amount': [1000, 2000, 3000, 4000]}
df = pd.DataFrame(data)

# 将日期列转换为日期类型
df['Start Date'] = pd.to_datetime(df['Start Date'])
df['End Date'] = pd.to_datetime(df['End Date'])

# 计算每行的日期差
df['Duration'] = (df['End Date'] - df['Start Date']).dt.days

# 计算每行的总和
df['Total Amount'] = df.apply(lambda row: df.loc[(df['Name'] == row['Name']) & (df['Start Date'] <= row['Start Date']) & (df['End Date'] >= row['End Date']), 'Amount'].sum(), axis=1)

print(df)

这段代码使用了Pandas库来处理数据。首先,将日期列转换为日期类型,然后计算每行的日期差并将结果存储在'Duration'列中。接下来,使用apply函数来逐行计算总和。在lambda函数中,使用条件筛选出符合条件的行,并对它们的'Amount'列求和。最后,将结果存储在'Total Amount'列中。

输出结果如下:

   Name Start Date   End Date  Amount  Duration  Total Amount
0  John 2022-01-01 2022-01-31    1000        30          1000
1  Emily 2022-02-01 2022-02-28    2000        27          2000
2  James 2022-03-01 2022-03-31    3000        30          3000
3    Amy 2022-04-01 2022-04-30    4000        29          4000

以上代码示例中使用了Pandas库来处理数据,通过创建DataFrame对象来存储数据,然后使用Pandas提供的函数和方法进行计算和筛选操作。

相关内容

热门资讯

黑科技了解!手机德州app辅助... 黑科技了解!手机德州app辅助(ai辅助)原生存在有挂(有挂挂)-哔哩哔哩;小薇(透视辅助)致您一封...
黑科技线上!AApoker辅助... 黑科技线上!AApoker辅助工具(辅助挂)总是真的是有挂(有挂机器人)-哔哩哔哩;大神普及一款德州...
黑科技app!微扑克俱乐部24... 1、黑科技app!微扑克俱乐部24小时(辅助挂)本来真的是有挂(有挂教学)-哔哩哔哩;详细教程。2、...
黑科技软件!德州可能有外挂吗(... 黑科技软件!德州可能有外挂吗(黑科技)好像是有挂(有挂智能)-哔哩哔哩;最新版2024是一款经典耐玩...
黑科技教程!德扑之星创建房间设... 黑科技教程!德扑之星创建房间设置(ai辅助)总是是真的有挂(有挂胜率)-哔哩哔哩是一款可以让一直输的...
黑科技辅助!GG扑克辅助软件(... 黑科技辅助!GG扑克辅助软件(透视)原本是真的有挂(有挂针对)-哔哩哔哩;实战中需综合运用上述技巧,...
黑科技辅助!wpk ai会不会... 黑科技辅助!wpk ai会不会被封(透明挂)原本真的有挂(有挂后台)-哔哩哔哩;最新版2024是一款...
黑科技好牌!aapoker辅助... 1、黑科技好牌!aapoker辅助(辅助挂)总是真的有挂(有挂盈利)-哔哩哔哩。2、aapoker辅...
黑科技好友!德州之星透牌器(黑... 1、黑科技好友!德州之星透牌器(黑科技)竟然真的是有挂(有挂ai代打)-哔哩哔哩。2、德州之星透牌器...
黑科技透明挂!哈糖大菠萝洗牌(... 黑科技透明挂!哈糖大菠萝洗牌(ai代打)本然有挂(有挂胜率)-哔哩哔哩;支持2-10人实时对战,虚拟...