【问题标题】:Grouping table by column value in R [duplicate]R中按列值分组表[重复]
【发布时间】:2015-11-11 21:07:27
【问题描述】:

对于新手问题,我很抱歉,但我找不到答案。

我有一个包含 3 列的表格:

File  Word  Occurrences
  f1   cat            2
  f1   dog            1
  f2   cat            4
  f2   pig            3

我想将它转换成一个表格,其中每个文件对应一行,每列对应一个特定单词的出现:

File  Cat  Dog  Pig
  f1    2    1    0
  f2    4    0    3

【问题讨论】:

  • 网址不是完全的骗子。
  • @akrun stackoverflow.com/a/5890831/3710546,来自第一个链接。
  • @Pascal 感谢您提供该网址。但正如here 所提到的,这不是关闭问题的正当理由(此链接也已关闭,然后基于此重新打开)。
  • @akrun 您认为它不是骗子。这是给我的。就是这样。
  • @Pascal 我没有说这是你的观点。但是,您可以关闭它。我会删除它。 :-)

标签: r


【解决方案1】:

试试

library(reshape2)
 dcast(df1, File~Word, value.var='Occurrences', sum)

或者

 xtabs(Occurrences~File+Word, df1)

【讨论】:

  • 谢谢,这两种解决方案都有效!我用过第二个
【解决方案2】:

我尝试不使用额外的包:

d <- read.table(header=TRUE, text=
'File  Word  Occurrences
f1   cat            2
f1   dog            1
f2   cat            4
f2   pig            3')
d.w <- reshape(d, dir="wide", idvar="File", timevar="Word")
d.w[is.na(d.w)] <- 0
d.w

【讨论】:

  • 谢谢,即使这样也行!
猜你喜欢
  • 2016-12-09
  • 2022-01-16
  • 1970-01-01
  • 1970-01-01
  • 2013-12-03
  • 2019-03-02
  • 2016-11-12
  • 2020-06-20
  • 2020-02-15
相关资源
最近更新 更多