这是Hadley在R中用于数据科学的一个问题。 map(-2:2,rnorm,n = 5)的结果是5个双向量的列表。 和map_dbl(-2:2,rnorm,n = 5)是一个错误,说“错误:结果1不是长度为1的原子矢量”。 但我不知道为什么。 感谢。
答案 0 :(得分:1)
map(-2:2, rnorm, n = 5)
是向量列表rnorm(-2, n=5)
,rnorm(-1, n=5)
,rnorm(0, n=5)
,rnorm(1, n=5)
,rnorm(2, n=5)
。
由于这些向量的长度不是1,map_dbl(-2:2, rnorm, n = 5)
会抛出错误。例如,map_dbl(-2:2, rnorm, n = 1)
不会返回错误,它是由rnorm(-2, n=1)
,rnorm(-1, n=1)
,rnorm(0, n=1)
,rnorm(1, n=1)
,rnorm(2, n=1)
组成的向量。< / p>