使用希腊字母命名R中的列表元素

时间:2013-06-09 22:29:16

标签: r

有没有办法用希腊字母命名R中的列表元素?我被要求创建一个看起来像list(α = 42)的列表。 此表达式的实际结果等同于list(a = 42)的结果。

我知道可以使用expression(symbol("a"))在图中使用希腊字母,但我找不到使用希腊字母作为列表元素名称的解决方案。使用as.character("\U03B1")会导致错误,仅使用"\U03B1"会导致“a”。我怀疑使用希腊字母除了绘图之外的其他地方是有意义的,但这是作业,所以我必须找到一种方法(如果有的话)。

2 个答案:

答案 0 :(得分:4)

我没有对此进行过彻底的测试,但是R似乎几乎没有任何符号作为变量名称而没有任何问题,除了?name之外,我找不到任何关于变量命名的具体规则

  

名称限制为10,000个字节(在2.13.0之前的R版本中为256个字节)。

您发布的代码非常适合我(在Fedora Core 18下运行的R 3.0.1):

> a <- list(α = 42)
> a
$α
[1] 42

那就是说,我肯定会建议将这封信拼写为“alpha”,因为写作和维护更为实际。

a <- list(alpha = 42)

答案 1 :(得分:2)

或者,然后使用字符向量中的unicode符号命名列表:

ll <- as.list( 42 )
names(ll) <- "\u03B1"
ll
#$α
#[1] 42

有趣的是你需要这样做。你的清单也体现了生命的意义。