-1
votes

Convertir des variables de liste dans un jeu de données en facteur

J'ai un jeu de données avec plusieurs variables répertoriées (var_1 et var_2). Mon objectif est de convertir ces variables en variables de facteur.

Le jeu de données ressemble à ceci: xxx

Voici ce que j'ai avec un typeof () Fonction: xxx

voici ce que je reçois avec une fonction STR () xxx

Comment puis-je transformer cette variable en facteur variable?


1 commentaires

Dans la base R, DAT [SAPPLY (DAT, IS.LIST)] <- PRACLY (DAT [SAPPLY (DAT, IS.LIST)], Fonction (x) Facteur (Unlist (x))) devrait être assez proche.


3 Réponses :


0
votes

Nous utilisons mutate_all pour appliquer la fonction sur chaque colonne, et dans cette utilisation mappe car les colonnes elles-mêmes sont list des éléments. Il n'est pas clair si la structure doit être conservée comme telle ou non. S'il s'agit, utilisez ensuite mappe , avec as.factor xxx

si nous devons le garder en colonnes normales, ecriste et convertir en facteur xxx


aussi, à partir du STR , c'est un data.dable , donc en utilisant datable.table méthodes xxx

données xxx


2 commentaires

Cela ne fonctionne pas sur mon jeu de données. Il a transformé toutes les valeurs des figures ....> HEAD (FACT_DATESET) VAR_1 VAR_2 VAR_3 VAR_4 VAR_5 VAR_6 1: 1 2 6 4 2 14 2: 1 2 6 4 2 14 3: 2 4 1 5 2 6 4: 2 1 5 5 2 10 5: 2 1 5 5 2 1 6: 2 3 1 4 4 8 et la STR () ressemble maintenant à ceci:> STR (YOO) classes 'data.Table' et 'data.frame': 83 OBS. de 6 variables: $ var_1: liste de 83 .. $: int 1. $: int 1


@REMI. J'ai montré un exemple qui fonctionne pour moi. Vous n'avez pas fourni de sortie de dput. Donc, c'est n'est pas clair



0
votes

Essayez ceci:

mydataset[[1]] <- lapply(mydataset[[1]], as.factor)


4 commentaires

Merci, il y a un message d'erreur: Erreur dans l'ordre (Y): Tapez 'Liste' Non disponible dans 'OrderVector1'


Je n'ai pas réalisé que c'était une donnée. Une carte, je pensais que c'était une liste. Essayez ceci: myDataset <- Lapply (myDataset [[[1]], AS.Factor)


Ça ne marche toujours pas :( Cela tourne tout le jeu de données dans une liste


Mon mauvais, myDataset [[[1]] <- labrapply (myDataset [[[1]], AS.Factor)



1
votes

Utiliser Unlist : xxx


2 commentaires

Cela ne fonctionne pas sur mon jeu de données. Il a transformé toutes les valeurs des figures ....> HEAD (FACT_DATESET) VAR_1 VAR_2 VAR_3 VAR_4 VAR_5 VAR_6 1: 1 2 6 4 2 14 2: 1 2 6 4 2 14 3: 2 4 1 5 2 6 4: 2 1 5 5 2 10 5: 2 1 5 5 2 1 6: 2 3 1 4 4 8 et la STR () ressemble maintenant à ceci:> STR (YOO) classes 'data.Table' et 'data.frame': 83 OBS. de 6 variables: $ var_1: liste de 83 .. $: int 1. $: int 1


Ce n'est pas mon problème si vous ne fournissez pas d'exemple reproductible minimal. J'ai recréé ce que vous montrez dans votre question. Évidemment, il y a quelque chose que vous ne montrez pas.