Chapter 4. Data files
4.9 Assembling data from multiple sources
In many contexts researchers need to bring together data from multiple source files, and in some
cases these sources are not organizedsuch that the data can simply be “stuck together” by append-
ing rows or columns to a base dataset. In gretl, the join command can be used for this purpose;
this command is discussedin detail in chapter7.
Add pdf to powerpoint slide - SDK application API:C# Create PDF from PowerPoint Library to convert pptx, ppt to PDF in, ASP.NET MVC, WinForms, WPF
Online C# Tutorial for Creating PDF from Microsoft PowerPoint Presentation
Add pdf to powerpoint slide - SDK application API:VB.NET Create PDF from PowerPoint Library to convert pptx, ppt to PDF in, ASP.NET MVC, WinForms, WPF
VB.NET Tutorial for Export PDF file from Microsoft Office PowerPoint
Chapter 5
Sub-sampling a dataset
5.1 Introduction
Some subtle issues can arise here; this chapter attempts to explain the issues.
Asub-sample may be defined in relation to a full dataset in twodifferent ways: wewill refer to these
as “setting” the sample and “restricting” the sample; these methods are discussed in sections5.2
and5.3 respectively. In addition section5.4 discusses some special issues relating to panel data,
and section5.5 coversresampling with replacement,which isuseful in the context of bootstrapping
test statistics.
The following discussion focuses on the command-line approach. But you can also invoke the
methods outlined here via the items under the Sample menu in the GUI program.
5.2 Setting the sample
By “setting” the sample we mean defining a sub-sample simply by means of adjusting the starting
and/or ending point of the current sample range. This is likely to be most relevant for time-series
data. For example, one has quarterly data from 1960:1 to 2003:4,and one wants to run a regression
using only data from the 1970s. A suitable commandis then
smpl 1970:1 1979:4
Or one wishes to set aside a block of observations at the end of the data period for out-of-sample
forecasting. In that case one might do
smpl ; 2000:4
where the semicolon is shorthand for “leave the starting observation unchanged”. (The semicolon
may also be used in place of the second parameter, to mean that the ending observation should be
unchanged.) By “unchanged” here, we mean unchanged relative to the last smpl setting, or relative
to the full dataset if no sub-sample has been defined up to this point. For example, after
smpl 1970:1 2003:4
smpl ; 2000:4
the sample range will be 1970:1 to 2000:4.
An incremental or relative form ofsetting the sample range is also supported. In this case a relative
offset should be given, in the form of a signed integer (or a semicolon to indicate no change), for
both the starting andending point. For example
smpl +1 ;
will advance the starting observation by one while preserving the ending observation, and
smpl +2 -1
SDK application API:VB.NET PowerPoint: Read, Edit and Process PPTX File
How to convert PowerPoint to PDF, render PowerPoint to and effective VB.NET solution to add desired watermark on source PowerPoint slide at specified
SDK application API:VB.NET PowerPoint: Process & Manipulate PPT (.pptx) Slide(s)
& editing library SDK, this VB.NET PowerPoint processing control add-on can to provide powerful & profession imaging controls, PDF document, image
Chapter 5. Sub-sampling a dataset
will both advance the starting observation by two and retard the ending observation by one.
An important feature of “setting” the sample as described above is that it necessarily results in
the selection of a subset of observations that are contiguous in the full dataset. The structure of
the dataset is therefore unaffected (for example, if it is a quarterly time series before setting the
sample, it remains a quarterly time series afterwards).
5.3 Restricting the sample
By “restricting” the sample we mean selecting observations on the basis of some Boolean (logical)
criterion, or by means of a random number generator. This is likely to be most relevant for cross-
sectional or panel data.
Suppose we have data on a cross-section of individuals, recording their gender, income and other
characteristics. We wish to select foranalysis only the women. Ifwe have a gender dummy variable
with value 1 for men and 0 for women we could do
smpl gender==0 --restrict
tothis effect. Or suppose wewant to restrict thesampleto respondents with incomes over $50,000.
Then we could use
smpl income>50000 --restrict
Aquestion arises: if we issue the two commands above in sequence, what do we end up with in
our sub-sample: all cases with income over 50000, or just women with income over 50000? By
default, the answer is the latter: women with income over 50000. The second restriction augments
the first, or in other words the final restriction is the logical product of the newrestriction and any
restriction that is already in place. If you want a newrestriction to replace any existing restrictions
you can first recreate the full dataset using
smpl --full
Alternatively, you can add the replace option to the smpl command:
smpl income>50000 --restrict --replace
This option has the effect of automatically re-establishing the full dataset before applying the new
Unlike a simple “setting” of the sample, “restricting” the sample may result in selection of non-
contiguous observations from the full data set. It may therefore change the structure of the data
This can be seen in the case ofpanel data. Say we have a panel offive firms (indexed by the variable
firm) observed in each of several years (identified by the variable year). Then the restriction
smpl year==1995 --restrict
produces a dataset that is not a panel, but a cross-section for the year 1995. Similarly
smpl firm==3 --restrict
produces a time-series dataset for firm number 3.
For these reasons (possible non-contiguity in the observations, possible change in the structure of
the data), gretl acts differently when you “restrict” the sample as opposed to simply “setting” it. In
SDK application API:C# PowerPoint - How to Process PowerPoint
With our C#.NET PowerPoint control, developers are able to split a PowerPoint into two or more small files. Add & Insert PowerPoint Page/Slide in C#.
SDK application API:VB.NET PowerPoint: Edit PowerPoint Slide; Insert, Add or Delete
NET PowerPoint slide modifying control add-on enables view more VB.NET PowerPoint slide processing functions & profession imaging controls, PDF document, image
Chapter 5. Sub-sampling a dataset
thecase of setting,the program merely recordsthe starting and ending observationsanduses these
as parameters to the various commands calling for the estimation of models, the computation of
statistics, and so on. In the case of restriction, the program makes a reduced copy of the dataset
and by default treats this reduced copy as a simple, undated cross-section—but see the further
discussion of panel data in section5.4.
Ifyou wish to re-impose a time-series interpretation ofthe reduceddataset you can do so using the
setobs command, or the GUI menu item “Data, Dataset structure”.
The fact that “restricting” the sample results in the creation of a reduced copy of the original
dataset may raise an issue when the dataset is very large. With such a dataset in memory, the
creation of a copy may lead to a situation where the computer runs low on memory for calculating
regression results. You can work around this as follows:
1. Open the full data set, and impose the sample restriction.
2. Save a copy of the reduced data set to disk.
3. Close the full dataset and open the reduced one.
4. Proceed with your analysis.
Random sub-sampling
Besides restricting the sample on some deterministic criterion, it may sometimes be useful (when
working with very large datasets, or perhaps to study the properties of an estimator) to draw a
random sub-sample from the full dataset. This can be done using, for example,
smpl 100 --random
to select 100 cases. If you want the sample to be reproducible, you should set the seed for the
random number generator first, using the set command. This sort of sampling falls under the
“restriction” category: a reduced copy of the dataset is made.
5.4 Panel data
Consider for concreteness the Arellano–Bond dataset supplied with gretl (abdata.gdt). This com-
prises data on 140 firms n  140) observed over the years 1976–1984 T  9. The dataset is
“nominally balanced” in the sense that that the time-series length is the same for all countries (this
being a requirement for a dataset to count as a panel in gretl), but in fact there are many missing
values (NAs).
You may want to sub-sample such a dataset in either the cross-sectional dimension (limit the sam-
ple to a subset of firms) or the time dimension (e.g. use data from the 1980s only). The simplest
(but limited) way to sub-sample on firms keys off the notation used by gretl for panel observations.
The full data range is printed as 1:1 (firm 1, period 1) to 140:9 (firm 140, period 9). The effect of
smpl 1:1 80:9
is to limit the sample to the first 80 firms. Note that if you instead tried smpl 1:1 80:4, gretl
would insist on preserving the balance of the panel and would truncate the range to “complete”
firms, as if you had typed smpl 1:1 79:9.
The firms in the Arellano–Bond dataset are anonymous, but suppose you had a panel with five
named countries. With such a panel you can inform gretl of the names of the groups using the
setobs command. For example, given
string cstr = "Portugal Italy Ireland Greece Spain"
setobs country cstr --panel-groups
SDK application API:VB.NET PowerPoint: Read & Scan Barcode Image from PPT Slide
PDF-417 barcode scanning SDK to detect PDF-417 barcode How to customize VB.NET PowerPoint QR Code barcode scanning VB.NET PPT barcode scanner add-on to detect
SDK application API:VB.NET PowerPoint: Convert & Render PPT into PDF Document
to convert one certain PowerPoint slide or a specified range of slides into .pdf document format using this VB.NET PowerPoint to PDF conversion library add-on.
Chapter 5. Sub-sampling a dataset
gretl creates a string-valuedseries named country with groupnamestaken from the variable cstr.
Then, to include only Italy and Spain you could do
smpl country=="Italy" || country=="Spain" --restrict
or to exclude one country,
smpl country!="Ireland" --restrict
To sub-sample in the time dimension, use of --restrict is required. For example, the Arellano–
Bond dataset contains a variable named YEAR that records the year of the observations and if one
wanted to omit the first two years of data one could do
smpl YEAR >= 1978 --restrict
If a dataset does not already incude a suitable variable for this purpose one can use the command
genr time to create a simple 1-based time index.
Note that if you apply a sample restriction that just selects certain units (firms, countries or what-
ever), or selectscertain contiguous time-periods—such that n > 1,T >1 andthe time-series length
is still the same across all included units—your sub-sample will still be interpreted by gretl as a
Unbalancing restrictions
In some cases one wants to sub-sample according to a criterion that “cuts across the grain” of
apanel dataset. For instance, suppose you have a micro dataset with thousands of individuals
observed over several years and you want to restrict the sample to observations on employed
Ifwe simply extracted from the total nT rowsof the dataset those that pertain to women who were
employed at time t t  1;:::;T we would likely end up with a dataset that doesn’t count as a
panel in gretl (because the specific time-series length, T
,would differ across individuals). In some
contexts it might be OK that gretl doesn’t take your sub-sample to be a panel, but if you want to
apply panel-specific methods this is a problem. You can solve it by giving the --balanced option
with smpl. For example, supposing your dataset contained dummy variables gender (with the value
1coding for women) and employed, you could do
smpl gender==1 && employed==1 --restrict --balanced
What exactly does this do? Well, let’s say the years of your data are 2000, 2005 and 2010, and that
some women were employed in all of those years, giving a maximum T
value of 3. But individual
526 is a women who was employed only in the year 2000 (T
1). The effect of the --balanced
option is then to insert “padding rows” ofNAs for the years 2005 and 2010 for individual 526, and
similarly for all individuals with 0 <T
<3. Your sub-sample then qualifies as a panel.
5.5 Resampling and bootstrapping
Given an original data series x, the command
series xr = resample(x)
creates a new series each of whose elements is drawn at random from the elements of x. If the
original series has 100 observations, each element of x is selected with probability 1=100 at each
drawing. Thusthe effect is to “shuffle” the elements ofx, with the twist that each element of x may
appear more than once, or not at all, in xr.
SDK application API:VB.NET PowerPoint: VB Code to Draw and Create Annotation on PPT
for limitations (other documents are compatible, including PDF, TIFF, MS to install and use Microsoft PowerPoint software and what would you do to add and draw
SDK application API:VB.NET PowerPoint: Add Image to PowerPoint Document Slide/Page
InsertPage" and "DeletePage" to add, insert or delete any certain PowerPoint slide without affecting the & profession imaging controls, PDF document, tiff
Chapter 5. Sub-sampling a dataset
The primary use ofthis function is in theconstruction ofbootstrap confidence intervalsorp-values.
Here is a simple example. Suppose we estimate a simple regression of y on x via OLS and find that
the slope coefficient has a reported t-ratio of 2.5 with 40 degrees of freedom. The two-tailed p-
value for the null hypothesis that the slope parameter equals zero is then 0.0166, using the t40
distribution. Depending on the context, however, we may doubt whether the ratio of coefficient to
standard error truly follows the t40 distribution. In that case we could derive a bootstrap p-value
as shown in Example5.1.
Under the null hypothesis that theslope with respect to xis zero, y is simply equal to itsmean plus
an error term. We simulate y by resampling the residuals from the initial OLS and re-estimate the
model. We repeat this procedure a large number of times, and record the number of cases where
the absolute value of the t-ratio is greater than 2.5: the proportion of such cases is our bootstrap
p-value. For a good discussion of simulation-based tests and bootstrapping, see Davidson and
MacKinnon (2004, chapter 4); Davidson and Flachaire (2001) is also instructive.
Example 5.1: Calculation of bootstrap p-value
ols y 0 x
# save the residuals
genr ui = $uhat
scalar ybar = mean(y)
# number of replications for bootstrap
scalar replics = 10000
scalar tcount = 0
series ysim
loop replics --quiet
# generate simulated y by resampling
ysim = ybar + resample(ui)
ols ysim 0 x
scalar tsim = abs($coeff(x) / $stderr(x))
tcount += (tsim > 2.5)
printf "proportion of cases with |t| > 2.5 = %g\n", tcount / replics
SDK application API:VB.NET PowerPoint: VB Codes to Create Linear and 2D Barcodes on
Here is a market-leading PowerPoint barcode add-on within VB.NET class, which means it as well as 2d barcodes QR Code, Data Matrix, PDF-417, etc.
SDK application API:VB.NET PowerPoint: Extract & Collect PPT Slide(s) Using VB Sample
Add(tmpFilePath1) docPathList.Add(tmpFilePath2) PPTXDocument this VB.NET PowerPoint slide processing tutorial & profession imaging controls, PDF document, image
Chapter 6
Graphs and plots
6.1 Gnuplot graphs
Aseparate program, gnuplot, is called to generate graphs. Gnuplot is a very full-featured graphing
program with myriad options. It is available note that a suitable copy
of gnuplot is bundled with the packaged versions of gretl for MS Windows and Mac OS X). Gretl
gives you direct access, via a graphical interface, to a subset of gnuplot’s options and it tries to
choose sensible values for you; it also allows you to take complete control over graph details if you
With a graph displayed, you can click on the graph window for a pop-up menu with the following
 Save as PNG: Save the graph in Portable Network Graphics format (the same format that you
see on screen).
 Save as postscript: Save in encapsulated postscript (EPS) format.
 Save as Windows metafile: Save in Enhanced Metafile (EMF) format.
 Save to session as icon: The graph will appearin iconic form when you select “Icon view” from
the View menu.
 Zoom: Lets you select an area within the graph for closer inspection (not available for all
 Print: (Current GTK or MS Windows only) lets you print the graph directly.
 Copy to clipboard: MS Windowsonly, lets you paste the graph into Windowsapplications such
as MS Word.
 Edit: Opens a controller for the plot which lets you adjust many aspects of its appearance.
 Close: Closes the graph window.
Displaying data labels
For simple X-Y scatter plots, some further options are available if the dataset includes “case mark-
ers” (that is, labels identifying each observation).1 With a scatter plot displayed, when you move
the mouse pointer over a data point its label is shown on the graph. By default these labels are
transient: they do not appearin the printedor copiedversion ofthe graph. They can be removed by
selecting “Clear data labels” from the graph pop-up menu. If you want the labels to be affixed per-
manently (so they will showup when the graph is printedor copied), select the option “Freeze data
labels” from the pop-up menu; “Clear data labels” cancels this operation. The other label-related
option, “All data labels”, requests that case markers be shown for all observations. At present the
display of case markers is disabled for graphs containing more than 250 data points.
For an exampleofsucha dataset, seethe Ramanathanfiledata4-10: thiscontainsdata onprivateschoolenrollment
for the 50statesof the USA plusWashington, DC; thecasemarkersarethetwo-letter codesfor thestates.
Chapter 6. Graphs and plots
GUI plot editor
Selectingthe Edit option in the graph popupmenu opensan editingdialogbox,shown in Figure6.1.
Notice that there are several tabs, allowing you to adjust many aspects of a graph’s appearance:
font, title,axis scaling, line colors andtypes, and so on. You can also add lines or descriptive labels
to a graph (under the Lines and Labels tabs). The “Apply” button applies your changes without
closing the editor; “OK” applies the changes and closes the dialog.
Figure 6.1: gretl’s gnuplot controller
Publication-quality graphics: advanced options
The GUI plot editor has two limitations. First, it cannot represent all the myriad options that
gnuplot offers. Users who are sufficiently familiar with gnuplot to know what they’re missing in
the plot editor presumably don’t need much help from gretl, so long as they can get hold of the
gnuplot command file that gretl has put together. Second, even if the plot editor meets your needs,
in terms of fine-tuning the graph you see on screen, a few details may need further work in order
to get optimal results for publication.
Either way, the first step in advanced tweaking of a graph is to get access to the graph command
 In the graph display window, right-click and choose “Save to session as icon”.
 Ifit’snot already open, open the icon view window—eithervia the menu item View/Icon view,
or by clicking the “session icon view” button on the main-window toolbar.
 Right-click on the icon representing the newly added graph and select “Edit plot commands”
from the pop-up menu.
 You get a window displaying the plot file (Figure6.2).
Here are the basic things you can do in this window. Obviously, you can edit the file you just
opened. You can also send it for processing by gnuplot, by clicking the “Execute” (cogwheel) icon
in the toolbar. Or you can use the “Save as” button to save a copy for editing andprocessing as you
Chapter 6. Graphs and plots
Figure 6.2: Plot commands editor
Unless you’re a gnuplot expert, most likely you’ll only need to edit a couple of lines at the top of
the file, specifyinga driver (plus options) andan output file. We offer here a brief summary of some
points that may be useful.
First, gnuplot’soutput modeis set viathe commandset term followedby the name ofa supported
driver (“terminal” in gnuplot parlance) plus various possible options. (The top line in the plot
commands window shows the set term line that gretl used to make a PNG file, commented out.)
The graphic formats that are most suitable for publication are PDF and EPS. These are supported
by the gnuplot term types pdf, pdfcairo and postscript (with the eps option). The pdfcairo
driver has the virtue that is behaves in a very similar manner to the PNG one, the output of which
you see on screen. This is providedby the version ofgnuplot that is included in the gretl packages
for MS Windows and Mac OS X; if you’re on Linux it may or may be supported. If pdfcairo is not
available, the pdf terminal may be available; the postscript terminal is almost certainly available.
Besides selecting a term type, if you want to get gnuplot to write the actual output file you need
to append a set output line giving a filename. Here are a few examples of the first two lines you
might type in the window editing your plot commands. We’ll make these more “realistic” shortly.
set term pdfcairo
set output ’mygraph.pdf’
set term pdf
set output ’mygraph.pdf’
set term postscript eps
set output ’mygraph.eps’
There are a couple of things worth remarking here. First, you may want to adjust the size of the
graph, and second you may want to change the font. The default sizes produced by the above
drivers are 5 inches by 3 inches for pdfcairo and pdf, and5 inches by 3.5 inches for postscript
eps. In each case you can change this by giving a size specification, which takes the form XX,YY
(examples below).
Chapter 6. Graphs and plots
You may ask, why bother changingthe size in the gnuplot commandfile? After all, PDF and EPS are
both vector formats, so the graphs can be scaledat will. True, but a uniform scaling will also affect
the font size, which may end looking wrong. You can get optimal results by experimenting with
the font and size options to gnuplot’s set term command. Here are some examples (comments
follow below).
# pdfcairo, regular size, slightly amended
set term pdfcairo font "Sans,6" size 5in,3.5in
# or small size
set term pdfcairo font "Sans,5" size 3in,2in
# pdf, regular size, slightly amended
set term pdf font "Helvetica,8" size 5in,3.5in
# or small
set term pdf font "Helvetica,6" size 3in,2in
# postscript, regular
set term post eps solid font "Helvetica,16"
# or small
set term post eps solid font "Helvetica,12" size 3in,2in
On the first line we set a sans serif font for pdfcairo at a suitable size for a 5  3.5 inch plot
(which you may find looks better than the rather “letterboxy” default of 5  3). And on the second
we illustrate what you might do to get a smaller 3  2 inch plot. You can specify the plot size in
centimeters if you prefer, as in
set term pdfcairo font "Sans,6" size 6cm,4cm
We then repeat the exercise for the pdf terminal. Notice that here we’re specifying one of the 35
standard PostScript fonts, namely Helvetica. Unlike pdfcairo, the plain pdf driver is unlikely to
be able to findfonts other than these.
In the third pair of lines we illustrate options for the postscript driver (which, as you see, can
be abbreviated as post). Note that here we have added the option solid. Unlike most other
drivers, this one uses dashed lines unless you specify the solid option. Also note that we’ve
(apparently) specified a much larger font in this case. That’s because the eps option in effect tells
the postscript driver to work at half-size (among other things), so we need to double the font
Table6.1 summarizes the basics for the three drivers we have mentioned.
default size (inches) suggested font
5 3
5 3
post eps
5 3.5
Table 6.1: Drivers forpublication-quality graphics
To findout more about gnuplot This site has documentation forthe current
version of the program in various formats.
Additional tips
To be written. Line widths, enhanced text. Show a “before and after” example.
Documents you may be interested
Documents you may be interested