【发布时间】:2018-11-25 20:17:57
【问题描述】:
我正在处理一个我不知道如何解决的相对简单的问题。假设我有以下数据框:
Book Word Rel.Freq
A art 0.56
A car 0.4
B car 0.58
B dog 0.32
C art 0.5
C car 0.48
C dog 0.35
所以,我想要一个数据框,其值与列字相同。我需要一些函数来比较单词中的 A、B 和 C 值并仅提取共享的值,即仅在所有“书籍”中重复的值。我还需要一种方法来总结 Rel。频率。值并根据书中变量的数量获得平均值。我想要一个看起来像这样的数据框:
word Mean.Rel.Freq
car 0.48
【问题讨论】:
-
"只有那些在所有 "books" 中重复的内容" 但是您预期输出中的
art不在A之间共享,B,C(而car是共享但不显示)。我错过了什么? -
欢迎来到 SO。在这里展示你尝试过的东西被认为是礼貌的......另外,你可能想澄清你的问题,因为它并不完全清楚。
-
"art" 并不是在所有书中都重复出现(仅在 A 和 C 中),0.5 和 0.56 的平均值(或总和)肯定不是 0.48。
-
试试
df1 %>% group_by(Word) %>% filter(n_distinct(Book) == n_distinct(df1$Book)) %>% summarise(Mean.Rel.Freq = mean(Rel.Freq))