【发布时间】:2020-10-22 03:28:59
【问题描述】:
我有 20 列,这里是提供数据的示例的一部分:
df <- read.table(text = "Id1 Id2 Id3 Id4 Id5 Id6 Id7 Id8
Ali.J koli.M Handy.M kori.Z Simon.B James.K Moli.Z kori.Z
Smith.kol Hoddy.G Nancy.M kori.Z Simon.B Khan.M Moli.Z Peter.K
Kato.Bada Ahadi.M Nancy.M kori.Z Simon.B Khan.M Moli.Z Peter.K
Moli.Z Rosi.Bab Handy.M Khan.M Rose.M Khan.M Ali.J Peter.K
Nadia.M Ali.J Kato.Bada Khan.M Rose.M Khan.M Ali.J Peter.K
Sarah.B Moli.z Handy.M Khan.M Rose.M James.K Ali.J Kato.Bada
", header = TRUE)
你可以看到我有 8 个 ID。我想移动 ID,如下所示。例如,Ali.j 出现在 id1、id2 和 id7 中。所以在第一列中,我们可以看到 id1、id2 和 id7。第二列是名称,最后一列是基于第一列的频率,所以它是三倍,最后,我想得到第二列和第三列的总和。这是预期的结果。
ID Name freq
id1,id2,id7 Ali.J 3
id1 Smith.Kol 1
id1,id3,id8 Kato.Bada 3
id1,id2,id7 Moli.Z 3
id1 Nadia.M 1
id1 Sarah.B 1
id2 Koli.M 1
id2 Hoddy.G 1
id2 Ahadi.M 1
id2 Rosi.Bab 1
id3 Handy.M 1
id3 Nancy.M 1
id4,id8 Kori.Z 1
id4,id6 Khan.M 1
id5 Simon.B 1
id5 Rose.M 1
id6 James.K 1
id8 Peter.k 1
sum 18 24
我们可以在 R 中做到吗?
【问题讨论】:
标签: r