Skip to content

Variable labels and value labels

3 messages · Jim Lemon, G.Maubach at weinwolf.de

#
Hi Georg,
You may find the "add.value.labels" function in the prettyR package useful.

Jim
On Tue, May 31, 2016 at 10:00 PM, <G.Maubach at weinwolf.de> wrote:
#
Hi Jim,

many thanks for the hint.

When looking at the documentation I did not get how I do control which 
value gets which label. Is it possible to define it?

Kind regards

Georg




Von:    Jim Lemon <drjimlemon at gmail.com>
An:     G.Maubach at weinwolf.de, r-help mailing list <r-help at r-project.org>, 

Datum:  01.06.2016 03:59
Betreff:        Re: [R] Variable labels and value labels



Hi Georg,
You may find the "add.value.labels" function in the prettyR package 
useful.

Jim
On Tue, May 31, 2016 at 10:00 PM, <G.Maubach at weinwolf.de> wrote:
and
you
to
defined
http://www.R-project.org/posting-guide.html
#
Hi Georg,
add.value.labels simply creates an attribute named "value.labels" for
the sorted values of the vector passed to it. The value labels passed
become the names of this attribute in the sorted order. The function
is intended to mimic a factor in reverse. While the factor adds
sequential numeric values to the original values, add.value.labels
adds names to the values passed. It was intended to be a mnemonic for
numeric values that perhaps should have been coded as character. If I
wrote this function now, it would probably look like this:

value.labels<-function(x,labels) {
 if(missing(labels)) return(attr(x,"value.labels"))
 else {
  attr(x,"value.labels") <- sort(unique(x))
  lenvallab <- length(attr(x,"value.labels"))
  if (length(labels) > lenvallab) {
   cat("More value labels than values, only the first",
    lenvallab, "will be used\n")
   labels <- labels[1:lenvallab]
  }
  names(attr(x, "value.labels"))<-labels
  return(x)
 }
}

age<-sample(1:5,100,TRUE)
value.labels(age)
age<-value.labels(age,c("0-19","20-39","40-59","60-79","80+"))
age
value.labels(age)

Jim
On Thu, Jun 2, 2016 at 3:37 AM, <G.Maubach at weinwolf.de> wrote: