Skip to content

Tobit Regression with unbalanced Panel Data

5 messages · Vanessa Romero, Arne Henningsen, PIKAL Petr +1 more

#
Hello,

I am doing Tobit Regression in R, because my dependent variable is censored
at 0. I have unbalanced panel data, for 6 years, 107 companies. I use
package CensReg.

I have imported my database(T1).

I use pdata.frame to specify the structure of my panel data. Like:


*mydata<- pdata.frame (T1, index = c("firm", "year")) *
Afterwards:

*Tob <- censReg(formula=Imp ~ Bath + CEOTurnover + ChangeOCF + E + Sales +
ROE + GTA + Size , data = mydata, method="BHHH") *
(as explained here:
https://cran.r-project.org/web/packages/censReg/vignettes/censReg.pdf)

I got here error message:


*Warnmeldung: In log(rEff$ercomp$sigma$id) : NaNs wurden erzeugt*

Another error message when *summary(Tob)*





*Call: censReg(formula = Imp ~ Bath + CEOTurnover + ChangeOCF + E + Sales +
ROE + GTA + Size, data = mydata, method = "BHHH") Observations: Total
Left-censored Uncensored Right-censored 606 469 137 0 Coefficients: Fehler
in printCoefmat(coef(x, logSigma = logSigma), digits = digits) : 'x' must
be coefficient matrix/data frame*

I am new to statistics and to R, what could be the problem or would you
suggest using other package.

Thank you,
Vanessa
#
Dear Vanessa

Please provide a minimal *reproducible* example that illustrates your
problem, e.g. using a data set that is included in an R package.

Best regards,
Arne
On 4 January 2017 at 10:28, Vanessa Romero <vanrome54 at gmail.com> wrote:

  
    
#
Hi

Although I cannot help you with your actual problem, you shall start with checking your data before doing any analysis. We do not have your data so it is hard to say what can be wrong. At least you shall provide result of

str(T1) and/or
str(mydata)

The first message is not an error but a warning that tells you about coercing some log values to NaN which can result e.g. from negative values.

log(-1)
[1] NaN
Warning message:
In log(-1) : NaNs produced

and probably some further calculation in summary function does not like it and throws error.

But without data it is only a guess.

And BTW, you shall post plain text not HTML.

Cheers
Petr
________________________________
Tento e-mail a jak?koliv k n?mu p?ipojen? dokumenty jsou d?v?rn? a jsou ur?eny pouze jeho adres?t?m.
Jestli?e jste obdr?el(a) tento e-mail omylem, informujte laskav? neprodlen? jeho odes?latele. Obsah tohoto emailu i s p??lohami a jeho kopie vyma?te ze sv?ho syst?mu.
Nejste-li zam??len?m adres?tem tohoto emailu, nejste opr?vn?ni tento email jakkoliv u??vat, roz?i?ovat, kop?rovat ?i zve?ej?ovat.
Odes?latel e-mailu neodpov?d? za eventu?ln? ?kodu zp?sobenou modifikacemi ?i zpo?d?n?m p?enosu e-mailu.

V p??pad?, ?e je tento e-mail sou??st? obchodn?ho jedn?n?:
- vyhrazuje si odes?latel pr?vo ukon?it kdykoliv jedn?n? o uzav?en? smlouvy, a to z jak?hokoliv d?vodu i bez uveden? d?vodu.
- a obsahuje-li nab?dku, je adres?t opr?vn?n nab?dku bezodkladn? p?ijmout; Odes?latel tohoto e-mailu (nab?dky) vylu?uje p?ijet? nab?dky ze strany p??jemce s dodatkem ?i odchylkou.
- trv? odes?latel na tom, ?e p??slu?n? smlouva je uzav?ena teprve v?slovn?m dosa?en?m shody na v?ech jej?ch n?le?itostech.
- odes?latel tohoto emailu informuje, ?e nen? opr?vn?n uzav?rat za spole?nost ??dn? smlouvy s v?jimkou p??pad?, kdy k tomu byl p?semn? zmocn?n nebo p?semn? pov??en a takov? pov??en? nebo pln? moc byly adres?tovi tohoto emailu p??padn? osob?, kterou adres?t zastupuje, p?edlo?eny nebo jejich existence je adres?tovi ?i osob? j?m zastoupen? zn?m?.

This e-mail and any documents attached to it may be confidential and are intended only for its intended recipients.
If you received this e-mail by mistake, please immediately inform its sender. Delete the contents of this e-mail with all attachments and its copies from your system.
If you are not the intended recipient of this e-mail, you are not authorized to use, disseminate, copy or disclose this e-mail in any manner.
The sender of this e-mail shall not be liable for any possible damage caused by modifications of the e-mail or by delay with transfer of the email.

In case that this e-mail forms part of business dealings:
- the sender reserves the right to end negotiations about entering into a contract in any time, for any reason, and without stating any reasoning.
- if the e-mail contains an offer, the recipient is entitled to immediately accept such offer; The sender of this e-mail (offer) excludes any acceptance of the offer on the part of the recipient containing any amendment or variation.
- the sender insists on that the respective contract is concluded only upon an express mutual agreement on all its aspects.
- the sender of this e-mail informs that he/she is not authorized to enter into any contracts on behalf of the company except for cases in which he/she is expressly authorized to do so in writing, and such authorization or power of attorney is submitted to the recipient or the person represented by the recipient, or the existence of such authorization is known to the recipient of the person represented by the recipient.
2 days later
#
Thank you for your answers.

I have just replaced pdata.frame with plm.data and it worked.

tobit1<- plm.data(T1, index = c("firm", "year"))

But I have two more questions, maybe someone could help:

summary(Tob)

Call:
censReg(formula = Imp ~ Bath + CEOTurnover + ChangeOCF + E +
    Sales + ROE + GTA + Size, data = tobit1, method = "BHHH")

Observations:
         Total  Left-censored     Uncensored Right-censored
           606            469            137              0

Coefficients:
              Estimate Std. error    t value  Pr(> t)
(Intercept)  1.110e-03  5.648e-04      1.965   0.0494 *
Bath         7.442e-03  6.780e-03      1.098   0.2724
CEOTurnover -1.500e-03  2.742e-04     -5.472 4.45e-08 ***
ChangeOCF   -6.738e-03  1.272e-03     -5.297 1.18e-07 ***
E           -5.515e-02  5.304e-03    -10.398  < 2e-16 ***
Sales        8.009e-03  3.487e-04     22.971  < 2e-16 ***
ROE          2.921e-03  5.896e-06    495.331  < 2e-16 ***
GTA         -3.509e-03  1.174e-03     -2.989   0.0028 **
Size        -5.688e-04  1.220e-04     -4.662 3.13e-06 ***
logSigma    -5.401e+00  2.746e-04 -19668.028  < 2e-16 ***
---
Signif. codes:  0 ?***? 0.001 ?**? 0.01 ?*? 0.05 ?.? 0.1 ? ? 1

BHHH maximisation, 150 iterations
Return code 4: Iteration limit exceeded.
Log-likelihood: -66915.77 on 10 Df

How can I calculate McFadden's adjusted  R2 in R?
How could I reduce iteration?

Thank you,
Vanessa



2017-01-04 13:25 GMT+01:00 PIKAL Petr <petr.pikal at precheza.cz>:
#
On 06 Jan 2017, at 15:08 , Vanessa Romero <vanrome54 at gmail.com> wrote:

            
Google gets you there soon enough (e.g., "mcfadden r2 in r tobit"). One of the hits point to a Stata FAQ, explaining why McF's R^2 is nonsensical for tobit models....
Better starting values? In the absences of that, I think you want to _increase_ the limit, so that you are more sure that the procedure has converged. Also, a logSigma of -5.4 suggests that you are working with small numbers -- it sometimes helps to scale things by a factor of 100 or 1000.

-pd