全部版块 我的主页
论坛 提问 悬赏 求职 新闻 读书 功能一区 经管百科 爱问频道
336 4
2024-03-24
请问各位大佬,知道企业发行债券开始时间、截止时间,如何将这段时间内的数据都赋值为1,不是这段时间赋值为0
是否处于发债期
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2024-3-28 19:55:53
首先得确定是否包括端点:即等于发行起始日期或到期日期到底是填写1还是填写0, 设 date 为需判定的时间变量,根据需要转变为日期型变量
方法一  gen   replace
gen 是否处于发行期内 = 0
replace 是否处于发行期内 ==1 if date >= date(发行起始日期) &  date <= date(到期日期)

方法二   函数    inrange() 函数 或  clip() 函数

gen 是否处于发行期内= inrange(date,发行起始日期,到期日期 )    //  包含起始日期点
gen 是否处于发行期内= clip(date,发行起始日期,到期日期 )    //  不包含起始日期点
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2024-3-28 20:23:10
同样设 date 为需判定的时间变量   发行起始日期   到期日期等变量先转换为日期型数据
方法三   cond() 函数
gen 是否处于发行期内= cond(date>=发行起始日期 & date<=到期日期, 1, 0, . )      //  可以只包含起点或者终点

方法四   recode 命令
recode date (min/date(发行起始日期) date(到期日期)/max = 0)
recode date (date(发行起始日期) / date(到期日期) = 1)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2024-4-1 23:28:41
周末看书又得到一种解决方法,简单且有效
设date 为需判定的时间变量
gen 是否处于发行期内 = (date>=发行起始日期 & date<=到期日期)    //  在发行起始日期和到期日期之间的日期设置为1,当然包含这两个时间点,如果不包括这两个时间点,则删除括号中的等于号)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2024-4-1 23:33:36
再向楼主提一建议:
采用 dataex 展示部分数据,或者编些数据或者示例数据,供帮助者调试程序,以确定结果
建议有效或无效,希楼主回复一句
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群