分组(折叠?)行,而无需汇总即可填写NA

时间:2018-12-30 05:03:45

标签: r group-by dplyr

我觉得dplyr应该很简单(我认为),但是我似乎找不到解决方法。

我的数据框包含数字和因子。每个观测值由两行表示,这两行在两列(Agg_Entropy和Av_Amplitude)之一中具有值或NA。我想将每个观察值的行合并为一行(不进行汇总),以便将NA替换为相关值。

数据框的简单摘录:

 Selection Low   High    Agg_Entropy Av_Amplitude Filename                  
  <fct>     <fct> <fct>         <dbl>        <dbl> <fct>                     
1 1         368.2 13747.8       NA           -17.5 20180110_182800_Sunset.wav
2 1         368.2 13747.8        5.62         NA   20180110_182800_Sunset.wav
3 2         142   13926.3       NA           -17.4 20180110_182800_Sunset.wav
4 2         142   13926.3        5.96         NA   20180110_182800_Sunset.wav

我想要什么:

 Selection   Low    High Agg_Entropy Av_Amplitude                   Filename
1         1 368.2 13747.8       5.623        -17.5 20180110_182800_Sunset.wav
2         2 142.0 13926.3       5.958        -17.4 20180110_182800_Sunset.wav

非常感谢您的帮助。谢谢!

1 个答案:

答案 0 :(得分:2)

group_by的“选择”,“文件名”,“低”和“高”列之后,通过删除{{1}的summarise元素,NA其他列}。在这里,我们假设组的每一列只有一个非NA元素

na.omit