lapply(Output_data," [[",2)在R

时间:2017-03-11 06:58:08

标签: r lapply

在RHadoop中,当我们使结果可读时,它将使用代码:

results <- data.frame(words=unlist(lapply(Output_data,"[[",1)), count
=unlist(lapply(Output_data,"[[",2)))

lapply(Output_data,"[[",1)是什么意思?特别是&#34; [[&#34;和&#39; 1&#39;在lapply。

2 个答案:

答案 0 :(得分:1)

list中经常使用[[[提取R元素的语法。它不是特定于任何包。语法的含义

lapply(Output_data,"[[",1)

遍历对象'Output_data'并提取([[)第一个元素。因此,如果'Output_data'是list data.frame,它将提取data.frame的第一列,如果它是list vector } s,它提取vector的第一个元素。它具有与匿名函数类似的功能i..e

lapply(Output_data, function(x) x[[1]]) 

后一种语法更清晰易懂,但前者更紧凑,更时尚......

有关[[的更多信息,请参阅?Extract

答案 1 :(得分:1)

[[[->等运营商实际上是功能。

list[[1]]

等于

`[[`(list,1)

在您的情况下,lapply(Output_data,"[[",1)表示提取Output_data的每个列(或子列表)的第一个值。 1是传递给[[函数的参数。