Sometimes, when you explore a new dataset, variable names don’t make much sense. In SPSS you would just look at the labels, in R it’s not that straightforward: checking codebooks all the time is tedious, reading a questionnaire and trying to guess which variable corresponds to each question is even less reliable. If your data has labels as attributes, or you have read .sav datafile into R with haven or foreign package, it would be handy to have a searchable table of all the variable and value labels in the dataset. I looked it up and didn’t find such a function, so I have written a little simple function myself. UPD. Now this function is a part of my R package LittleHelpers. The function gets the attributes of variables and value labels and put them in a nicely formatted table.
##
Use: label_book(df, max.val=25, vars="all", view=TRUE) There are three arguments:
df- data.frame, result of reading spss file by packages ‘haven’ or ‘foreign’max.vals- integer, how many value labels per each variable shoud be listed in the table, default is 25vars- can be integer, character, or range of integers or characters. Variables indexes or names for getting subsets of label book.view- logical, whether the result should be shown in the RStudio viewer pane. Defualt is TRUE. If FALSE, html file named ‘label_book_output.html’ is saved in your working directory.
The only extra package required is knitr.
Example
Result
Label Book for “ess8”
| Variables | Variable labels | Values | Value labels |
|---|---|---|---|
| contplt | Contacted politician or government official last 12 months | 1 | Yes |
| 2 | No | ||
| 7 | Refusal | ||
| 8 | Don't know | ||
| 9 | No answer | ||
| wrkprty | Worked in political party or action group last 12 months | 1 | Yes |
| 2 | No | ||
| 7 | Refusal | ||
| 8 | Don't know | ||
| 9 | No answer | ||
| wrkorg | Worked in another organisation or association last 12 months | 1 | Yes |
| 2 | No | ||
| 7 | Refusal | ||
| 8 | Don't know | ||
| 9 | No answer | ||
| badge | Worn or displayed campaign badge/sticker last 12 months | 1 | Yes |
| 2 | No | ||
| 7 | Refusal | ||
| 8 | Don't know | ||
| 9 | No answer | ||
| sgnptit | Signed petition last 12 months | 1 | Yes |
| 2 | No | ||
| 7 | Refusal | ||
| 8 | Don't know | ||
| 9 | No answer | ||
| pbldmn | Taken part in lawful public demonstration last 12 months | 1 | Yes |
| 2 | No | ||
| 7 | Refusal | ||
| 8 | Don't know | ||
| 9 | No answer |