如何使用pandas从年份和秒表格式('YYYY-SX')中获取日期。

问题描述 投票:0回答:1

我有一个pandas列叫时间,它包含年份和学期。例如在格式('YYYYSX')2018S1。我想把YYYYSX中的时间格式转换成日期

输入

   time
1  2019S2
2  2019S2
3  2020S1


产出

   time
1  2019-09-30
2  2019-10-31
3  2020-01-31


python pandas dataframe datetime period
1个回答
1
投票
def convert(time):
    year = time[:4]
    semester = time[4:]
    conversions = {'S1': '-01-31' , 'S2': '-06-03', 'S3': '-09-30'}
    return pd.to_datetime(year + conversions[semester])

df['time'] = df.time.apply(convert)

返回 。

    time
0   2019-06-03
1   2019-06-03
2   2020-01-31

我认为你的预期输出有一些不一致,但你只需要在你想要的semestersdates中放入任何你想要的东西。conversions 词典;

© www.soinside.com 2019 - 2024. All rights reserved.