如何在R中使用函数来显示所有列表?
我不是使用lappy、apply等的专家。因此,我拥有的是下一个列表如何在R中使用函数来显示所有列表?,r,R,我不是使用lappy、apply等的专家。因此,我拥有的是下一个列表 my_list [[1]] [1] "40.394081 -3.7083041" [[2]] [1] "40.3960251 -3.7116921" [[3]] [1] "40.3938449 -3.7071731" [[4]] [1] "40.3935099 -3.7121505" 我想将函数用作.numeric,用于my_list的每个入口。我的意思是,将列表的每个入口转换为数字,但保留列表的结构 谢谢。您可以使用
my_list
[[1]]
[1] "40.394081 -3.7083041"
[[2]]
[1] "40.3960251 -3.7116921"
[[3]]
[1] "40.3938449 -3.7071731"
[[4]]
[1] "40.3935099 -3.7121505"
我想将函数用作.numeric
,用于my_list
的每个入口。我的意思是,将列表的每个入口转换为数字,但保留列表的结构
谢谢。您可以使用
lappy
进行以下操作:
lapply(my_list, function(x) as.numeric(strsplit(x, ' ')[[1]]))
在这里,我使用
strsplit
分割字符串,然后使用as.numeric
将其转换为数值lappy
将其应用于列表中的每个元素并返回结果。我们可以使用扫描
my_list2 <- lapply(my_list, function(x) scan(text=x, what = numeric(), quiet = TRUE))
str(my_list2)
#List of 4
# $ : num [1:2] 40.39 -3.71
# $ : num [1:2] 40.4 -3.71
# $ : num [1:2] 40.39 -3.71
# $ : num [1:2] 40.39 -3.71
对不起,但它返回的是NA的。我想这是因为列表的每个入口都不是矢量对不起,我没有发现它是一个字符串。扩展了我的答案。可以,但结尾需要一个括号。请修改一下,我将给出答案good@HenryNavarro检查Scan可能比我使用
strsplit
@PaulHiemstra的解决方案更可靠。我认为strsplit
应该是你的其他问题,这个列表是通过googleway
查询谷歌API的结果吗?
read.table(text=unlist(my_list), header = FALSE)