【STATA】时间变量处理,字符串转为日期时间 |
您所在的位置:网站首页 › stata转换变量类型 › 【STATA】时间变量处理,字符串转为日期时间 |
STATA、EXCEL、PYTHON处理时间变量使之能够加减计算的方法是:以某一个时间线为基准(如STATA以1960年1月1日为基准),计算指定时间与基准时间的“相隔天数/月数/季度数/年数”,通过“相隔”数来进行加减计算。 大部分被导入STATA的时间变量不会被自动识别为时间变量(这句话可能是我乐观了),需要进行字符串到“相隔”数值的转换。 但是因为“相隔”数对使用者来说本身是没有意义的,所以还需要format 进行一下格式上的转化,简单来讲就是披上一层可以让我们认识的人皮。 图1:常见的时间数据导入格式
date1的数据构成是年月日时分秒,所以选用clock()函数,得出的结果是指定时间与1960年1月1日 0时0分0秒的间隔秒数,因为是以秒计次,所以间隔数字非常大。 date2的数据构成是年月日,所以选用date()函数。得出的结果是指定时间与1960年1月1日的间隔天数。 图2:转换后的时间间隔
常用转换函数包括: 函数转化类型常用format转化格式clock(var,“YMDhms”)年月日时分秒%tcweekly(var,“YW”)年周(eg.2021W23)%twdate(var,“YMD”)年月日%tdmonthly(var,“YM”)年月%tmquartly(var,“YQ”)年季(eg.2021Q2)%tqhalfyearly(var,H")年半年(eg.2021h1)%thyear(var,“Y”)年%ty以上函数一般规律为:时间函数(待转换变量/“值,“该变量/值的格式”[,Y])。 注意⚠️格式参数(即表格中的“YMDhms”/“YW”/"YMD"等)需要根据变量/值的格式来自由调整,如20210813 10:24:43的格式为YMDhms,而10:24:43 08/13/2021的指定格式则为hmsDMY. Y用于处理2位数年份,如21年8月3日,一般情况下可以忽略 在确定了变量/值格式参数后,目前的时间变量函数已经可是识别大部分常用时间写法,如date(var,“YMD”)函数可以识别的字符串日期格式包括但不限于20210813、2021.08.13、2021/08/13等。 时间变量提取单独的时间元素 date1、date2转为时间变量后,需要单独提取年、月等时间元素,可以用 year();month();week();day() 图4:提取出来的时间元素
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |