January 2019

Popularity of binary choice models makes their applications more and more sophisticated, reaching beyond the simple low-dimension applications. The implications of having plenty of independent variables may be severe, making the likelihood function highly irregular or even impossible to be solved. Even if the local maximum can be found, it is likely to be unstable or it may take a lot of time and computing power, especially if the independent variables are simple dummies.

function tries to address some of the above these issues. For instance, the algorithm will check which observations do not bring extra information to the model and leave them out from the estimation. However, this step can be taking too long for some of the Big Data problems. A quick solution is to tell Stata in advance which observations to exclude when running the probit. Here is a simple plug and play code snippet.

Firstly, I define a generic setup wit...

December 2018

It may happen that even if the C# programs are compiled without errors, there is no program output in the console. The reason can be that while the output of the program is being buffered it is not displayed to the end user immediately. It is difficult to say why this exactly happens, as this can be system- or compiler-specific. However, there is a simple remedy.

To unbuffer the output, you will need to flush it with
function after the buffer is used. On the example of the Granger causality Diks-Wolski codes (you can find them
here), find the first occurrence of
function and just flush it right after
printf("Input file (X): "); 
In the example above
is the standard output buffer. It is the default file descriptor where a program can write its o...

December 2018

Recently, I have received many questions on how one can run the C# codes to replicate my research results and to extend them to other applications. While C# makes the computations very efficient, it is not the most friendly language for the end users, especially for the ones that have little experience with programming. Nevertheless, the overall process is quite simple and I outline it below. It should work for any OS.

C# programming language is set of commands and structures which make the algorithms intuitive and understandable for humans. Although it is low-level, meaning that its operations are very closely linked to the core computer architecture, the machines cannot understand them instantly. To make the C# programs understandable for your computer, you will need to compile them.

There are multiple C# compilers available, some of them even available online. I typically use the GCC compiler (

M. Wolski
Marcin Wolski, PhD
Advisor to Vice-President
European Investment Bank
E-mail: M.Wolski (at) eib.org
Phone: +352 43 79 88708

View my LinkedIn profile View my profile
View my IDEAS/RePEc profile  IDEAS/RePEc