2

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

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

4

2 回答 2

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)
于 2013-06-09T22:48:37.157 回答
2

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

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

有趣的是你需要这样做。你的清单也蕴含着生命的意义。

于 2013-06-09T22:54:33.787 回答