0
我想根據虛構的貿易調查示例轉換以下示例數據。想一想,A國說它出口到B國(第2行,出口= 1),而B國說它不從A進口(第4行,進口= 0),反之亦然。我現在想要獲得數據集中所有這些匹配的最大值(= 1),即在這種情況下,第4行中的導入將爲= 1)。R:社交網絡 - 根據不同列和行中的條件得出的最大值
> df <- data.frame("Sender" = c("A", "A", "A", "B", "B", "B", "C", "C", "C"),
+ "Receiver" = c("A", "B", "C", "A", "B", "C", "A", "B", "C"),
+ "Export"= c(0,1,0,0,0,0,0,0,0),
+ "Import" = c(0,1,1,0,0,1,0,0,0))
> df
Sender Receiver Export Import
1 A A 0 0
2 A B 1 1
3 A C 0 1
4 B A 0 0
5 B B 0 0
6 B C 0 1
7 C A 0 0
8 C B 0 0
9 C C 0 0
的解決方案應該是
Sender Receiver Export Import Export_MAX Import_MAX
1 A A 0 0 0 0
2 A B 1 1 1 1
3 A C 0 1 0 1
4 B A 0 0 1 1
5 B B 0 0 0 0
6 B C 0 1 0 1
7 C A 0 0 1 0
8 C B 0 0 1 0
9 C C 0 0 0 0
我搜索了很多方法可以做,在這個論壇和其他地方,也沒有找到一個解決方案爲止。我正在考慮沿着「導入」列中應用最大值函數的方法,以「發件人」&「接收者」中給出的值爲條件,但我沒有儘可能地達到在此處報告代碼。
有什麼想法嗎?你的建議非常感謝。