我正在玩弄substitute
并且无法弄清楚nchar(substitute(a + b + c))
的实际结果是什么?结果是
nchar(substitute(a + b + c))
[1] 1 5 1
究竟是什么计算的?我认为中期只是该表达式的元素数量。但是下面的内容是什么呢?其他1代表什么呢?
nchar(substitute(a + b))
[1] 1 1 1
答案 0 :(得分:6)
我们可以检查转换为character
v1 <- as.character(substitute(a + b + c))
v1
#[1] "+" "a + b" "c"
nchar(v1)
#[1] 1 5 1
也计算给出字符数的空间。
而
as.character(substitute(a + b))
#[1] "+" "a" "b"
是每个元素的一个字符长度。