2017-02-03 3 views
2

Ich muss den folgenden Datenrahmen nehmen und eine 3x3-Matrix mit allen paarweisen Produkten der prop-Variable erstellen. Hier die Daten, mit denen ich gestartet ...Erstellen einer paarweisen Produktmatrix in R

> example 
    Parasite  prop 
1 Hel_1.1 0.06818182 
2 Hel_11 0.18181818 
3 Hel_13 0.02272727 

> dput(example) 
structure(list(Parasite = structure(1:3, .Label = c("Hel_1.1", 
"Hel_11", "Hel_13", "Hel_14", "Hel_2", "Hel_3", "Hel_4", "Hel_4.5", 
"Hel_5", "Hel_6", "Hel_7", "Hel_9", "Pro_1", "Pro_2", "Hel_1.4" 
), class = "factor"), prop = c(0.0681818181818182, 0.181818181818182, 
0.0227272727272727)), .Names = c("Parasite", "prop"), row.names = c(NA, 
3L), class = "data.frame") 

Ich möchte eine Matrix erhalten, die (Die paarweise Produktwerte sind ein wenig aus, weil ich sie von Hand berechnet, ohne gleichmäßig Rundung) sieht wie folgt aus

  Hel_1.1 Hel_11 Hel_13 
Hel_1.1 .0046  .0122  .0015 
Hel_11 .0122  .0324  .0039 
Hel_13 .0015  .0039  .0004 

Ich würde jede Hilfe zu schätzen wissen.

Antwort

2

Sie können dies versuchen:

prop <- example$prop 
names(prop) <- example$Parasite 
prop %o% prop 
#   Hel_1.1  Hel_11  Hel_13 
#Hel_1.1 0.004648760 0..0015495868 
#Hel_11 0..033057851 0.0041322314 
#Hel_13 0.001549587 0.004132231 0.0005165289 
Verwandte Themen