Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Stata中执行此操作之前,如何删除所有观察结果?_Stata - Fatal编程技术网

在Stata中执行此操作之前,如何删除所有观察结果?

在Stata中执行此操作之前,如何删除所有观察结果?,stata,Stata,使用Stata,如果满足某个标准,我想删除当前观测之前的所有观测 确切地说,在这个示例中,我想删除出现在close为0的观察之前的所有观察 t close id rdate MPC 0 MPC 31may2011 MPC 0 MPC 01jun2011 MPC 0 MPC 24jun2011 MPC 37.65 MPC 27jun2011 MPC 38.7 MPC 28jun2011 MPC 40.07 MPC 29jun2011 MP

使用Stata,如果满足某个标准,我想删除当前观测之前的所有观测

确切地说,在这个示例中,我想删除出现在
close
0
的观察之前的所有观察

t   close   id  rdate
MPC 0       MPC 31may2011
MPC 0       MPC 01jun2011
MPC 0       MPC 24jun2011
MPC 37.65   MPC 27jun2011
MPC 38.7    MPC 28jun2011
MPC 40.07   MPC 29jun2011
MPC 0       MPC 30jun2011
MPC 42.2    MPC 01jul2011
MPC 42.21   MPC 05jul2011
MPC 41.89   MPC 06jul2011
MPC 41.78   MPC 07jul2011
MPC 41.41   MPC 08jul2011
MPC 40.1    MPC 11jul2011
MPC 40.48   MPC 12jul2011
MPC 39.96   MPC 13jul2011
MPC 38.64   MPC 14jul2011
MPC 39.16   MPC 15jul2011
MPC 39.12   MPC 18jul2011
MPC 39.74   MPC 19jul2011
MPC 39.53   MPC 20jul2011
MPC 40.1    MPC 21jul2011
MPC 40.57   MPC 22jul2011
MPC 41.37   MPC 25jul2011
MPC 43.05   MPC 26jul2011
类似于:
by t:drop如果<\n*<\n&close==0
将导致:

t   close   id  rdate
MPC 42.2    MPC 01jul2011
MPC 42.21   MPC 05jul2011
MPC 41.89   MPC 06jul2011
MPC 41.78   MPC 07jul2011
MPC 41.41   MPC 08jul2011
MPC 40.1    MPC 11jul2011
MPC 40.48   MPC 12jul2011
MPC 39.96   MPC 13jul2011
MPC 38.64   MPC 14jul2011
MPC 39.16   MPC 15jul2011
MPC 39.12   MPC 18jul2011
MPC 39.74   MPC 19jul2011
MPC 39.53   MPC 20jul2011
MPC 40.1    MPC 21jul2011
MPC 40.57   MPC 22jul2011
MPC 41.37   MPC 25jul2011
MPC 43.05   MPC 26jul2011
这似乎微不足道,但我就是想不出来

主要的问题是,我不知道如何描述或命名这种技术,因此我无法搜索它


我怎样才能做到这一点呢?

我现在设法找到了解决这个问题的方法,使用了下面的“hack”。不过,我希望能有一个更快更干净的方法来做到这一点

* drop all obs before a close price of 0 if occuring *
sort ticker_id rdate
gen tagdate = rdate if close == 0
by ticker_id: egen lasttagdate = max(tagdate)
drop if rdate <= lasttagdate & !missing(lasttagdate)
drop tagdate lasttagdate
*在收盘价为0(如果发生)之前放弃所有OB*
排序代码
gen tagdate=rdate如果关闭==0
按股票代码:egen lasttagdate=max(tagdate)

如果rdate可以压缩,则删除。最后一个零是在

egen lastz = max(rdate / (close == 0)), by(id)
那你可以

drop if date < lastz
删除日期

你可以在谷歌上搜索我在Stata杂志上的文章“与……相比”,讨论这项技术。如果没有零,您将自动获得缺失信息。

Hmm,当
close!=0
?完全正确;故意这么做。除以零会产生缺失,但除非缺少面板的所有值,否则将忽略这些缺失。不管是哪种方式,它都应该是好的。这在Stata 13中似乎不再起作用了。有什么改变了吗?没有什么能改变这个把戏。“似乎不再起作用了”根本不是什么细节;我们需要可复制的例子来评论明显的问题。