Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.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:用滞后的y变量衡量x变量_Stata - Fatal编程技术网

Stata:用滞后的y变量衡量x变量

Stata:用滞后的y变量衡量x变量,stata,Stata,我试图用另一个滞后变量来衡量一个变量 (IB)按滞后总资产(AT)=ROA进行缩放 我试过下面两种方法 及 第一个返回时,1.ta的值为零 第二个似乎在前一个条目上生成值,即使它是另一家公司。我认为这是正确的,因为只有第一行缺少值。我认为每个公司的第一年都应该有一个缺失值 此外,我在下面尝试了这段代码,但它表明语法无效 xtset gvkey year foreach gvkey { gen roa = (ib)/(at[_n-1]) } 我使用的是compustat,因此它类似于以下内容:

我试图用另一个滞后变量来衡量一个变量

(IB)按滞后总资产(AT)=ROA进行缩放

我试过下面两种方法

第一个返回时,1.ta的值为零

第二个似乎在前一个条目上生成值,即使它是另一家公司。我认为这是正确的,因为只有第一行缺少值。我认为每个公司的第一年都应该有一个缺失值

此外,我在下面尝试了这段代码,但它表明语法无效

xtset gvkey year
foreach gvkey { 
gen roa = (ib)/(at[_n-1]) }
我使用的是compustat,因此它类似于以下内容:

  gvkey|Year |Ticker  | at   | ib   |
-------|-----|--------|------|------|
 001111| 2006| abc    |1000  |50    |
 001111| 2007| abc    |1100  |60    |
 001111| 2008| abc    |1200  |70    |
 001111| 2009| abc    |1300  |80    |
 001112| 2008| www    |28777 |1300  |
 001112| 2009| www    |26123 |870   |
 001113| 2009| ttt    |550   |-1000 |
 001114| 2010| vvv    |551   |-990  |

这很难理解
1.ta
可能是,也可能不是
L.at
的打字错误

gvkey
字符串吗?在Stata标签中,有关于如何给出Stata数据示例的详细建议,您没有遵循这些建议

原则上,您的第一种方法是正确的,因此很难知道出了什么问题,除了

  • 第二个似乎在上一个条目上生成
    值,即使
    这是一家不同的公司

  • 那完全正确。先前的观察就是先前的观察,该命令中没有任何内容提及或暗示面板结构或
    xtset
    tsset
    信息

  • 您的
    foreach
    语句只是胡乱猜测,与
    foreach
    支持的任何形式无关<这里根本不需要code>foreach
    :lag操作符意味着自动在面板内工作 我这样做了,这可能会有所帮助

    clear 
    input str6 gvkey Year  str3 Ticker   at    ib   
     001111 2006 abc    1000  50    
     001111 2007 abc    1100  60    
     001111 2008 abc    1200  70    
     001111 2009 abc    1300  80    
     001112 2008 www    28777 1300  
     001112 2009 www    26123 870   
     001113 2009 ttt    550   -1000 
     001114 2010 vvv    551   -990  
    end 
    
    egen id = group(gvkey), label 
    xtset id Year 
    
    gen wanted = at/L.ib 
    
    list, sepby(gvkey) 
    
         +------------------------------------------------------------+
         |  gvkey   Year   Ticker      at      ib       id     wanted |
         |------------------------------------------------------------|
      1. | 001111   2006      abc    1000      50   001111          . |
      2. | 001111   2007      abc    1100      60   001111         22 |
      3. | 001111   2008      abc    1200      70   001111         20 |
      4. | 001111   2009      abc    1300      80   001111   18.57143 |
         |------------------------------------------------------------|
      5. | 001112   2008      www   28777    1300   001112          . |
      6. | 001112   2009      www   26123     870   001112   20.09462 |
         |------------------------------------------------------------|
      7. | 001113   2009      ttt     550   -1000   001113          . |
         |------------------------------------------------------------|
      8. | 001114   2010      vvv     551    -990   001114          . |
         +------------------------------------------------------------+
    

    您引用的Statalist线程准确地解释了为什么第二种方法是个坏主意。
      gvkey|Year |Ticker  | at   | ib   |
    -------|-----|--------|------|------|
     001111| 2006| abc    |1000  |50    |
     001111| 2007| abc    |1100  |60    |
     001111| 2008| abc    |1200  |70    |
     001111| 2009| abc    |1300  |80    |
     001112| 2008| www    |28777 |1300  |
     001112| 2009| www    |26123 |870   |
     001113| 2009| ttt    |550   |-1000 |
     001114| 2010| vvv    |551   |-990  |
    
    clear 
    input str6 gvkey Year  str3 Ticker   at    ib   
     001111 2006 abc    1000  50    
     001111 2007 abc    1100  60    
     001111 2008 abc    1200  70    
     001111 2009 abc    1300  80    
     001112 2008 www    28777 1300  
     001112 2009 www    26123 870   
     001113 2009 ttt    550   -1000 
     001114 2010 vvv    551   -990  
    end 
    
    egen id = group(gvkey), label 
    xtset id Year 
    
    gen wanted = at/L.ib 
    
    list, sepby(gvkey) 
    
         +------------------------------------------------------------+
         |  gvkey   Year   Ticker      at      ib       id     wanted |
         |------------------------------------------------------------|
      1. | 001111   2006      abc    1000      50   001111          . |
      2. | 001111   2007      abc    1100      60   001111         22 |
      3. | 001111   2008      abc    1200      70   001111         20 |
      4. | 001111   2009      abc    1300      80   001111   18.57143 |
         |------------------------------------------------------------|
      5. | 001112   2008      www   28777    1300   001112          . |
      6. | 001112   2009      www   26123     870   001112   20.09462 |
         |------------------------------------------------------------|
      7. | 001113   2009      ttt     550   -1000   001113          . |
         |------------------------------------------------------------|
      8. | 001114   2010      vvv     551    -990   001114          . |
         +------------------------------------------------------------+