R:具有不等行长度(空值)的数据帧到行列表中

时间:2016-10-26 10:20:56

标签: r list dataframe

df <- data.frame(
  a= c('a',''),
  b= c('b', 'c'), 
  stringsAsFactors = F,
  row.names = c('id1', 'id2')
)

> df
    a b
id1 a b
id2   c

如果我将列a中的第二个元素视为空(值为&#39;&#39;),如何在删除时将此数据帧转换为每行的列表l空的&#39;值。

> l
$id1
[1] "a" "b"

$id2
[1] "c"

1 个答案:

答案 0 :(得分:1)

我们可以lapply(split(as.matrix(df), row.names(df)), setdiff, "") #$id1 #[1] "a" "b" #$id2 #[1] "c"

<div id="div_a_1" class="pingpongdiv">hkh</div><div id="div_b_1" class="pingpongdiv">nuigyuig</div>
<div id="div_a_2" class="pingpongdiv">uynyn</div><div id="div_b_2" class="pingpongdiv">,jomoi</div>
<div id="div_a_3" class="pingpongdiv">yfvrcers</div><div id="div_b_3" class="pingpongdiv">rdcsers</div>