当前位置: 首页 > 知识库问答 >
问题:

R中因子上计数的总和

柴彬
2023-03-14
FeatureName     Uuid     Count 

ClickHeadline   ABC1     17 
ChangeSetting   ABC1     3  
ClickHeadline   CBA2     5 
ChangeSetting   CBA2     7 
SomethingElse   CBA2     5
Uuid    ClickHeadline    ChangeSetting    SomethingElse
ABC1    17               3                0
CBA2    5                7                5

我觉得我应该能在聚合函数上做到这一点,但我不知道如何告诉它,看一个变量的计数和。我知道我有点不知所措,但有人能帮我解决这个问题吗?

共有1个答案

水浩歌
2023-03-14

有多种可能性

如果需要sum,还可以使用reshape2packagedcast函数

df <- read.table(header=T, text='
                 FeatureName     Uuid     Count 

ClickHeadline   ABC1     17 
ChangeSetting   ABC1     3  
ClickHeadline   CBA2     5 
ChangeSetting   CBA2     7 
SomethingElse   CBA2     5
                 ')

library(reshape2)
dcast(df, Uuid ~ FeatureName, value.var="Count", sum)

  Uuid ChangeSetting ClickHeadline SomethingElse
1 ABC1             3            17             0
2 CBA2             7             5             5

如果dataset仅限于所提供的作用域,则只需使用基本reshape函数

out <- reshape(df, idvar="Uuid", timevar="FeatureName", v.names="Count", direction="wide")
out[is.na(out)] = 0
out
  Uuid Count.ClickHeadline Count.ChangeSetting Count.SomethingElse
1 ABC1                  17                   3                   0
3 CBA2                   5                   7                   5
xtabs(Count ~ Uuid+FeatureName, df)
      FeatureName
Uuid   ChangeSetting ClickHeadline SomethingElse
  ABC1             3            17             0
  CBA2             7             5             5
library(tidyr)
spread(df, key=FeatureName, value=Count, fill=0)
  Uuid ChangeSetting ClickHeadline SomethingElse
1 ABC1             3            17             0
2 CBA2             7             5             5
 类似资料:
  • 主要内容:在数据帧中的因子,改变级别顺序,产生因子级别因子是用于对数据进行分类并将其存储为级别的数据对象。它们可以存储字符串和整数。 它们在具有有限数量的唯一值的列中很有用。 像“男”,“女”,“真”,“假”等。它们在统计建模的数据分析中很有用。 因子可通过函数使用向量作为输入来创建。 示例 当我们执行上述代码时,会产生以下结果 - 在数据帧中的因子 在使用一列文本数据创建数据帧时,R将文本列视为分类数据并在其上创建因子。参考以下示例代码 - 当我们

  • 我想在我的数据框中使用函数 relevel() 和 reorder()。我了解 relevel 的工作原理,但我不明白为什么我没有看到 data.frame 中级别的变化。例如,假设我有虹膜数据集 由reprex软件包(v2.0.1)于2022年4月12日创建 我可以使用此函数更改级别的顺序,或者在dplyr中使用此函数: 由reprex软件包(v2.0.1)于2022-04-12年创建。我没有看

  • 我有一个包含四个变量的数据帧(df),其中两个变量是因子,var1和var2。var1和var2各有三个电平。 数据帧中不存在var1和var2的某些组合,例如var1级别“慢速”没有var2级别“4或5”。 我发现在最好的情况下添加行是很棘手的,并且不知道如何实现这一点。任何帮助都将不胜感激!

  • 我在网站上看到过很多类似的问题,但不知何故找不到答案。我有一个如下所示的数据帧:

  • 本文向大家介绍R子集数据框中的行和列,包括了R子集数据框中的行和列的使用技巧和注意事项,需要的朋友参考一下 示例 语法访问的行和列:[,[[,和$ 本主题涵盖访问数据帧的特定行和列的最常用语法。这些是 就像matrix带单括号的data[rows, columns] 使用行号和列号 使用列(和行)名称 像list: 用单括号data[columns]获取数据框 用双括号data[[one_colu

  • 我想在一个帖子查询中返回每个帖子的元值总数。 因此,例如,我查询以获取具有自定义文章类型的参数的文章,并且作者是当前作者。这一部分很容易——返回实际的帖子,也可以统计帖子。但是我想从查询中的每个帖子中计算一个元值,并返回一个总数。meta值是一个统计该帖子被偏爱多少次的值。元键是“simplefavorites_count”,我在这里使用这个插件作为参考: https://favoritepost