不同列的总数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了不同列的总数相关的知识,希望对你有一定的参考价值。

我想返回数据框列表,其中除名称列外,列数也要不同,我想返回相同的列。因此,对于此示例,它将返回

list3$dfa

     names X  Y   Z
1    Ben   1  1   2

list3$dfb

   names  X  Y  Z
1  John   2  2  2

请让我知道我将如何做。

答案

您可以使用Map

Map(function(x, y) data.frame(Name = x[[1]][1], 
                       t(colMeans(x[-1] != y[-1])) * 100), list1, list2)

#$dfa
#  Name    X    Y    Z
#1  Ben 33.3 33.3 66.7

#$dfb
#  Name  X  Y  Z
#1 John 50 50 75
另一答案

我们可以使用map2中的purrr

library(dplyr)
library(purrr)
map2(list1, list2, ~  
      tibble(Name = select(.x, names) %>% slice(1),
      map2_dfc(.x[-1], .y[-1],  ~ 100 *mean(.x != .y))))
#$dfa
# A tibble: 1 x 4
#  Name$names     X     Y     Z
#  <chr>      <dbl> <dbl> <dbl>
#1 Ben         33.3  33.3  66.7

#$dfb
# A tibble: 1 x 4
#  Name$names     X     Y     Z
#  <chr>      <dbl> <dbl> <dbl>
#1 John          50    50    75

以上是关于不同列的总数的主要内容,如果未能解决你的问题,请参考以下文章

自定义表达式总数

jqgrid怎么统计一列的值?

朴素贝叶斯 (Weka) - 属性总数 x 实例总数 - 为啥不同?

Laravel:在不同的行中使用不同的 where 条件进行查询

为啥混淆矩阵中的总数与输入的数据不同?

不同总数的 SSIS 计算