r - 如何在R中的大数据框中按特定文本对行求和

标签 r

所以我有一个包含 200 多列的大型数据集。

在数据集(df)中,每个条目都是按日期排列的,这使得数据看起来像这样

Name    Passes  Goal    
Jack    7       1   
Jack    4       2   
Ali     10      1
John    5       5   

我希望它可以按人名对值进行求和,而无需我输入姓名(有超过 100 个不同的姓名) 所以它看起来像这样:

Name    Passes  Goal    
Jack    11      3   
Ali     10      1
John    5       5   

我该如何在 r 上执行此操作?

最佳答案

获取您原来发布的 htlm-data 并通过 rvest 读取它(见下文)
您可以执行以下操作:

dat <- doc %>% html_table() %>% `[[`(1)
colnames(dat) <- dat[1,]
dat <- dat[-1,]
dat[,2:3] <- lapply(dat[,2:3], as.numeric)
aggregate(.~Date, FUN = sum, data=dat)

结果:

  Date Passes Goals
1  Ali      7     1
2 Jack     10     5
3 John     11     2

读入数据:

require(rvest)
doc <- read_html('<div class="CSSTableGenerator" >
                <table >
          <tr>
          <td>
          Date
          </td>
          <td >
          Passes
          </td>
          <td>
          Goals
          </td>
          </tr>
          <tr>
          <td >
          John
          </td>
          <td>
          5
          </td>
          <td>
          1
          </td>
          </tr>
          <tr>
          <td >
          John
          </td>
          <td>
          6
          </td>
          <td>
          1
          </td>
          </tr>
          <tr>
          <td >
          Ali
          </td>
          <td>
          7
          </td>
          <td>
          1
          </td>
          </tr>
          <tr>
          <td >
          Jack
          </td>
          <td>
          10
          </td>
          <td>
          5
          </td>
          </tr>
          </table>
          </div>')

关于r - 如何在R中的大数据框中按特定文本对行求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34419199/

相关文章:

r - 在 R 中将日期转换为文本

r - 拆分列并在 R 中获取结果列表的最后一个对象

r - 根据 CI 输出制作表格

r - 在正方形内绘制geom_tile边界以防止重叠

xml - 使用“R”中的XML节点

python - 在 python 中进行因式分解

javascript - Shiny 的 Javascript 事件不适用于 $(#id) jQuery 选择器

r - 延长 ggplot2 中密度图的尾部

R 如何根据ID和最新状态日期合并2个数据框?

r - 从数组中提取满足 R 中条件的索引