提取给定日期的学期

Extracting semester of a given date

我需要提取给定日期的学期,我得到了这段代码:

df['semester']= df.my_date.dt.year.astype(str) + '-S'+ np.where(df.my_date.dt.quarter.gt(2),2,1).astype(str)

谁能给我解释一下这部分是如何工作的:

np.where(df.my_date.dt.quarter.gt(2),2,1)

检查numpy.where if condition is True, here Series.dt.quarter is greater by Series.gt like 2 set 2 else 1.

所以它是一样的:

np.where(df.my_date.dt.quarter > 2,2,1)