我想检查薪水是否在每个月的5号之前记入流式数据中。
代码
Salary['date'] = pd.to_datetime(Salary['date'], format='%d-%m-%y')
sum_Salary = Salary.groupby('date').sum()
print("\nSalary received per month \n", sum_Salary)
虚拟输入
每月收到的工资
Date Salary
07-06-18 15300.0
07-07-18 15300.0
03-08-18 14783.0
04-09-18 16249.0
05-10-18 14448.0
06-11-18 15663.0
预期产量
Date Salary
03-08-18 14783.0
04-09-18 16249.0
05-10-18 14448.0
仅供参考:
print(type(Salary['date']))
# class 'pandas.core.series.Series'
答案 0 :(得分:3)
您可以执行以下操作:
首先,您需要将Date
列转换为Pandas Datetime:
In [2612]: Salary.date = pd.to_datetime(Salary.date, format="%d-%m-%y")
现在,df
看起来像这样:
In [2632]: Salary
Out[2632]:
Date Salary
0 2018-07-07 15300.0
1 2018-08-03 14783.0
2 2018-09-04 16249.0
3 2018-10-05 14448.0
4 2018-11-06 15663.0
In [2633]: Salary[Salary['date'].dt.day <= 5].groupby('date')['Salary'].sum()
Out[2633]:
Date
2018-08-03 14783.0
2018-09-04 16249.0
2018-10-05 14448.0
我想这就是你想要的。