[R] returning a modified fix()-ed dataframe
Sundar Dorai-Raj
sundar.dorai-raj at pdf.com
Fri Oct 7 20:22:22 CEST 2005
Adrian DUSA wrote:
> On Friday 07 October 2005 20:55, Sundar Dorai-Raj wrote:
>
>>Adrian DUSA wrote:
>>
>>>[...snip...]
>>
>>Hi, Adrian,
>>
>>You need to assign "fix(dataf)" to something:
>>
>>my.data <- data.frame(age=c(24,35,28), gender=c("Male", "Female", "Male"))
>>require(Hmisc)
>>label(my.data$age) <- "Respondent's age"
>>label(my.data$gender) <- "Responent's gender"
>>
>>variables <- function(x) {
>> dataf <- data.frame(variable=NA, label=NA)
>> varlab <- NA
>> for (i in 1:length(names(x))) {
>> dataf[i,1] <- names(x)[i]
>> dataf[i,2] <- label(x[,i])
>> varlab[i] <- label(x[,i])
>> }
>> dataf <- fix(dataf)
>> # I assume this would return a modified dataf
>> for (i in which(varlab != dataf[,2])) {
>> label(x[,i]) <- dataf[i,2]
>> }
>> # don't forget to return dataf
>> dataf
>>}
>>
>>variables(my.data)
>>
>>HTH,
>>
>>--sundar
>
>
> Hi Sundar,
>
> Hm... the new function correctly returns (and prints) dataf but I need to
> return my.data...
> I also thought about returning my.data, but if this would be a large
> dataframe, printing it wouldn't be so nice.
> Basically, I would need to somehow silently return the input (modified)
> dataframe.
>
Then assign the return of "variables" back to my.data.
my.data <- variables(my.data)
My guess is you want to have your function fix my.data without having to
reassign it. The answer to that question is most likely a road you do
not want to travel. Otherwise, try searching the archives for "assign
reference" for some clues.
> Also, I now have another related two questions:
> 1. is it possible to "edit" the contents of a cell when using fix() ? In order
> to change a letter one would have to change the whole string.
Double-click on the field.
> 2. is it possible to change the width of a column?
>
Right-click on the column then select auto-size column. Or left-click on
a column line and drag to desired width.
View the Help from right-clicking for other options.
> Thank you,
> Adrian
>
Your welcome,
--sundar
More information about the R-help
mailing list