黃河泉 发表于 2017-8-21 19:19 
1. 你应该用"回复"来回复!2. 你點回覆你的程序部分根本看不清楚! 3. 请试试
十分感谢黄老师的耐心指教!我是新手,很规矩还不太懂,请您包涵

刚试了下您提供的代码,发现(_n)直接将所有周次设置为连续的周次了,但我的数据本身由于假期等因素,存在gap,所以这样会掩盖一部分数据的信息,不知道黄老师有没有别的方法?我想要根据自然周设置周次,不知道stata有能不能实现此类功能?
下面是我的具体数据范例和问题,请您参考
数据输入:
* Example generated by -dataex-. To install: ssc install dataex
clear
input long ID int 日期_Date double 价格
34 18599 9.2
34 18606 9.3
34 18613 9.18
34 18620 8.75
34 18627 8.28
34 18963 5.74
34 18970 5.7
34 18977 4.53
34 18984 4.22
34 18991 3.91
34 19334 4
34 19341 4.03
34 19348 3.91
34 19355 4.06
34 19698 4.21
34 19705 4.45
34 19712 4.27
34 19719 4.12
34 20062 7.1
34 20069 7.03
34 20076 7.34
34 20083 7
34 20088 6.84
34 20426 20.27
34 20433 19.87
34 20440 22.45
34 20445 27.95
333 19358 5.11
333 19698 48.4
333 19705 50.15
333 19712 51.78
333 19719 49.78
333 20062 24.7
333 20069 24.7
333 20076 27.63
333 20083 28.33
333 20088 27.44
333 20426 29.09
333 20433 29.38
333 20440 29.72
333 20447 32.15
333 20453 32.82
end
format %td 日期_Date
复制代码
设置面板数据格式:
gen 年份=year( 日期_Date )
label variable 年份 "year( 日期_Date )"
gen week=week( 日期_Date )
label variable week "week( 日期_Date )"
gen 周次=yw(年份, week)
label variable 周次 "yw(年份, week)"
xtset ID 周次 ,w
复制代码
此处报错:repeated time values within panel
r(451);
求助!!
(我的数据是股票收盘价格,想要保留每周的最后一个交易日收盘价为当周收盘价,并设置为周次的面板数据)
但由于week()函数的输出值是以每年的第1天到第7天为第一周,以此类推,输出值范围限于1-52,每年365天(7+52+1)的话,2010年有53个周五,但最后两个周五(2010年12月24和2010年12月31)的week()函数输出值均为52,造成time value重复,无法使用xtset。
求指导如何解决这个问题