In R, given a data matrix x:
> x
s1 s2 s3 s4 s5 s6 s7 s8 s9 s10
F1 119 164 151 64 176 146 157 133 167 150
F2 89 85 136 83 107 104 94 124 106 85
F3 113 82 113 75 92 63 42 87 74 94
F4 198 186 194 192 189 173 197 186 195 182
you would do just:
>
data.frame(dom.sps=dimnames(x)[[2]][apply(x,1,which.max)],abndce=apply(x,1,max))
dom.sps abndce
F1 s5 176
F2 s3 136
F3 s1 113
F4 s1 198
Agus
Dr. Agustin Lobo
Instituto de Ciencias de la Tierra (CSIC)
Lluis Sole Sabaris s/n
08028 Barcelona SPAIN
tel 34 93409 5410
fax 34 93411 0012
alobo@ija.csic.es
On Mon, 18 Mar 2002, Guillaume OLLIVIER wrote:
> Bonjour à tous,
> une petite question énervante sur les requêtes de base de donnée, pas
> forcément géographique d'ailleurs :
> Je travaille sur un tableau de données de recouvrement avec les sp en
> colonne et les relevés (faciès de végétation) en ligne, soit
>
> spA | SpB| ...|Spn
> FaciesA 0.01 | 0 | ...| 0.2
> FaciesB 0 | 0.5 | ... | 0
> .... ... | ... | ... | ...
> FaciesN 0.5 | 0.01|...| 0
>
> J'aimerai pouvoir connaitre pour chaque faciès l'espèce la plus
> abondante (voire les 3 premières) de manière automatique et que le code de
> cette ou ces espèces apparaissent dans la ligne
> correspondant au faciès, soit :
>
> Sp la plus abondante
> FaciesA Spn
> FaciesB SpB
> ...
> FaciesN SpA
>
> Une telle requête est elle possible sous Access et avec quelle démarche ? Et
> avec Excell ?? d'autres outils ???
> Faut il passer par du VB ...?
>
>
> Cordialement
>
>
> Guillaume OLLIVIER
> IAC/CIRAD Nouvelle Calédonie
>
>
This archive was generated by hypermail 2b30 : Fri Feb 14 2003 - 14:36:09 MET