J'ai une liste L
d'unités de données où chaque trame est constituée de la variable Var
et d'une observation composée de nombres différents. Chaque nombre dans chaque observation appartient à l'ensemble {1,2,3,4,5,11,12,13,14,15}
. L
pourrait, à titre d'exemple, ressemblent:Recherche de modèles dans une liste de données en utilisant R
> L
[[1]]
Var
1 "3", "11", "1", "15",
[[2]]
Var
1 "5", 13", "3", "12",
[[3]]
Var
1 "4", "1", "2", "5",
Le problème que je tente de résoudre est le suivant. Je veux savoir s'il y a un nombre positif x = {1,2,3,4,5}
de sorte que lorsqu'il est ajouté à chaque nombre dans une observation donnée, cette observation devient équivalente à une autre. Par exemple, considérons les 2 premiers éléments de L
et laisser x=2
, puis, en ajoutant x
au premier élément de L
rendements:
> L[[1]]
Var
1 "5", "13", "3", "17",
Le numéro 17 ne répond pas aux conditions de l'ensemble défini ci-dessus. Je veux que les contraintes suivantes s'appliquent sur x
. Soit y
dénote un nombre dans un obs. dans une trame de données de L
:
if y + x > 15 then subtract 5
if 5 < y + x < 11 then subtract 5
Le même exemple avec ces contraintes produirait:
> L[[1]]
Var
1 "5", "13", "3", "12",
Et L[[1]]
deviendrait équivalent à L[[2]]
. Dans mon monde, L[[1]]
et L[[2]]
partagent le même modèle. Ce que je veux faire est de faire correspondre les éléments de L
basés sur des modèles équivalents (dans le sens décrit ci-dessus) et de trier les groupes en fonction du "nombre de membres". Donc, dans l'exemple ici, je voudrais détecter que L[[1]]
et L[[2]]
sont dans un groupe et que c'est le groupe avec le plus de membres, suivi par le groupe suivant, qui dans cet exemple se compose uniquement de L[[3]]
. Je suis très nouveau à R et toute direction serait appréciée!
Normaliser vos données, en soustrayant le minimum de chaque ligne? –