On 15/07/2011 1:42 PM, Sverre Stausland wrote:
>>>
>>> > funny.g<- "\u1E21"
>>> > funny.g
>>
>> [1] "ḡ"
>>
>>> > data.frame (funny.g) -> funny.g
>>> > funny.g$funny.g
>>
>> [1] ḡ
>> Levels:<U+1E21>
>
> I think the problem is in the data.frame code, not in writing. Data.frames
> try to display things in a readable way, and since you're on Windows where
> UTF-8 is not really supported, the code helpfully changes that character to
> the "<U+1E21>" string. for display.
I thought the data.frame function didn't alter the unicode coding,
since funny.g$funny.g above still displays the right unicode character
(although it does list the levels as<U+1E21>).
> You should be able to write the Unicode character to file if you use lower
> level methods such as cat(), on a connection opened using the file()
> function with the encoding set explicitly.
I'm sorry, but I don't understand what it means "to use cat() on a
connection opened using the file() function". Could you please clarify
that?
Sorry, I think my suggestion was wrong. What I meant was something like
file <- file("your filename", encoding="UTF-8")
cat("\u1E21", file= file)
but this doesn't appear to work.
Duncan Murdoch
______________________________________________
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.