That column of your data frame contains a factor, rather than character
values. You don't tell us how you created the data frame, but you might
be interested in the stringsAsFactors option to data.frame() and read.table().

Or, if you do actually want a factor for that column, you can use factor()
to change the levels.

Sarah

On Tue, Apr 12, 2011 at 2:20 PM, Sparks, John James <jspa...@uic.edu> wrote:
> Dear R Helpers,
>
> I am trying to write a character value to the row of a data frame and am
> running into a problem that I don't have when I do this for numeric
> arguments.  For example, the following works just fine:
>
>> test<-data.frame(number=numeric(1))
>> test[1,]<-.5
>> test
>  number
> 1    0.5
>
> But the following bombs out:
>
>> hold<-data.frame(symbol=character(1))
>> hold[1,]<-"NYSE:MMM"
> Warning message:
> In `[<-.factor`(`*tmp*`, iseq, value = "NYSE:MMM") :
>  invalid factor level, NAs generated
>
> Could someone please guide me as to what adjustment I need to make to
> assign this character value to this row of the data frame?  Your help
> would be very much appreciated.
>
> --John Sparks
>

-- 
Sarah Goslee
http://www.functionaldiversity.org

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to