【发布时间】:2021-11-11 19:04:20
【问题描述】:
我在一个数据框中有三列
- ID - A001
- DoA - 15-03-2014 - 录取日期
- DoL - 17-08-2020 - 离开日期
新建三个列:
Cal_Yr - Calender Year
Str_Date - Start of Date
End_Date - End of Date
如果入学年份小于2015年
Str_Date = 01-01-2015 else DoA
End_Date = 15-03-2015
我将年份分为两部分......周年日期之前的一部分(开始年份的 dd-mm)和周年日期之后的另一部分,以便我可以找到两个部分的重量......但是之前的日期01-01-2015 应改为 01-01-2015
我必须设计一个循环来创建重复的 12 行,如图所示。
输入表是:
| ID | DoA | status | DoL | Duration(years) | fee amt |
|---|---|---|---|---|---|
| A23 | 02-Jan-16 | DH | 18-Aug-18 | 2 | 2345 |
| B23 | 01-Mar-09 | IS | 31-Dec-20 | 11 | 1000 |
| C23 | 16-Sep-12 | SU | 12-Jul-19 | 7 | 14565 |
| D23 | 01-Jun-20 | LA | 07-Sep-20 | 0 | 123 |
| E23 | 15-Sep-16 | IS | 31-Dec-20 | 4 | 6790 |
| F23 | 01-Jan-19 | IS | 31-Dec-20 | 1 | 7272 |
【问题讨论】:
-
请重新格式化您的数据框。也许你应该使用
print(df.tostring(), index=False) -
我需要按图片输出
-
您的输出数据没有意义。其他年份的 3 月 15 日有什么特别之处?为什么没有“15-3-2014 到 31-12-2014”、“1-1-2015 到 31-12-2015”、“1-1-2016 到 31-12-2016”等?为什么 2016 年 1 月 1 日包含在 2015 日历年中?
-
我已经忽略了
-
我必须忽略 01-01-2015 之前的所有年份。根据 DoA 中的数据,我的数据框应从 2015 年 1 月 1 日或更多时间开始
标签: python python-3.x pandas python-2.7 python-requests