为什么打印数据帧时会采用另一种编码而不是打印数据帧的列?

时间:2019-05-20 09:22:31

标签: r utf-8 character-encoding

我用UTF-8编码的--horizontal-pod-autoscaler-sync-period创建一个数据帧:

ä

到目前为止,> df <- data.frame(a = c('\xc3\xa4')); > df$a <- as.character(df$a); 的编码仍是未知的,正如预期的那样:

df$a

在打印> Encoding(df$a); [1] "unknown" 时,它也会打印我所期望的垃圾:

df$a

因此,我明确地将> df$a; [1] "ä" 的编码设置为UTF-8:

df$a

现在打印> Encoding(df$a) <- 'UTF-8'; 给我正确的字符:

df$a

但是,当我打印整个数据集时,我又得到了意外的结果。

> df$a;
[1] "ä"

尽管> df a 1 <U+00E4> 在任何地方都没有零字节:

df$a

我无法理解为什么打印> charToRaw(df$a) [1] c3 a4 与打印df会有不同的行为。

0 个答案:

没有答案