J'ai un tableau très simple sur lequel je veux exécuter une analyse de courbe ROC. Mais d'abord, quand j'essaye de forcer les données dans le type Factor en utilisant la commande table[1]<-factor(table[1])
, j'obtiens l'erreur
Error in sort.list(y) : 'x' must be atomic for 'sort.list'
Have you called 'sort' on a list?
Quelques exemples de lignes des données sont donnés ci-dessous
GRADE TRUE-GRADE
benign Benign
benign Benign
benign Benign
benign Benign
benign Benign
benign Benign
benign Malignant
benign Malignant
indeterminate Benign
indeterminate Benign
indeterminate Benign
indeterminate Benign
indeterminate Benign
indeterminate Benign
indeterminate Benign
indeterminate Benign
indeterminate Benign
indeterminate Benign
indeterminate Benign
indeterminate Benign
indeterminate Benign
indeterminate Malignant
indeterminate Malignant
indeterminate Malignant
likely benign Benign
likely benign Benign
likely benign Benign
Quelqu'un peut-il me dire ce que je fais mal? Le résultat de str (tableau) est donné ci-dessous:
data.frame': 127 obs. of 2 variables:
$ GRADE : Factor w/ 5 levels "benign","indeterminate",..: 1 1 1 1 1 1 1 1 1
$ BENIGN.MALIGN: Factor w/ 2 levels "Benign","Malignant": 1 1 1 1 1 1 1 1 1 1 ...
La fonction [
appliqué à un bloc de données renvoie un bloc de données (si un seul argument est utilisé). Si vous souhaitez accéder à une seule colonne et la renvoyer en tant que vecteur, vous devez utiliser [[
au lieu.
table[1] <- factor(table[[1]])
Mais cela peut ne pas être nécessaire car les deux colonnes sont des facteurs (voir votre sortie str
).
Soit dit en passant: table
n'est pas un bon nom pour un objet, car c'est aussi le nom d'une fonction R de base.