0
votes

R - tête (B [ chat]) a besoin d'aide ici pour comprendre la logique

Ce sera probablement une question très simple, mais je ne pouvais pas comprendre la logique derrière ce code et j'ai besoin de vos gars d'aide. J'ai une trame de données qui comprend environ dix colonnes (comme doubles, facteurs, char). Et j'ai aussi un vecteur comme chat <- C (2: 4, 7:10, 18, 24) . permet de appeler ces données.frame myData . Lorsque j'utilise un code comme celui-ci, il contient des colonnes et cache également certaines d'entre elles; xxx

lorsque je mettez un - avant chat , il affiche les autres colonnes.

OK, je connais la fonction tête et la signification de "-" mais comment il choisit les colonnes à afficher ou à masquer? Je ne pouvais pas comprendre la logique du code. Merci


3 commentaires

Le CAT est servant de sélecteur de colonne par numéro. Faire myData [ c (2: 4,7: 10,18,24)] et comparer le résultat. Il produit exactement le même que myData [ chat] . tête vient de retourner une partie du df .


Lisez comment sous-ensemble fonctionne dans R.


Le sous-ensemble général est df [rang.index, colum.nindex] . Call HEAD (MTCARS) , il vous donne 11 colonnes. Ensuite, exécutez mtcars [ chat] , il vous donnera une erreur. Comme il n'y a pas de 18ème et de 24e colonnes dans les données de MTCARS. Cependant, si vous exécutez mtcars [ - cat] , alors cela signifie, prenez toutes les colonnes possibles, mais excluez le nombre 2,3,4,7,8,9,10,18 et 24. Ce paramètre ne recevra aucune erreur, même s'il n'y a pas de 18ème et 24ème colonnes. Puisque c'est un travail exclu maintenant ...


3 Réponses :


1
votes

Il utilise les valeurs dans chat et affiche les colonnes correspondantes, c'est-à-dire 2, 3, 4, 7, 8, 9, 10, 18, 24.

donc tête (myData [ chat]) vous donne les premières lignes d'une donnée.frame qui est un sous-ensemble de votre original myData (contient uniquement des colonnes spécifiées dans chat ).

Le moins vous donne toutes les colonnes, à l'exception de celle que vous avez spécifiée dans chat .

Veuillez donner un exemple reproductible si vous avez besoin de plus d'aide.


0 commentaires

0
votes

C'est un simple sous-ensemble de données.

Voici un exemple plus simple: myData [ c (2,3,4,7)] retournera les deuxième, troisième, quatrième et septième colonne de vos données. tête (myData [ c (2,3,4,7)]) retournera les 6 premières lignes de ces colonnes.

Si vous utilisez un sous-ensemble avec des entiers négatifs, toutes les lignes sauf ces entiers seront retournés: myData [ -c (2,3,4,7)] retournera toutes les colonnes sauf la deuxième, Troisième, quatrième et septième colonne.

maintenant lorsque vous branchez CAT au lieu de C (2,3,4,7) , quelque chose de similaire arrive avec toutes les valeurs contenues dans Chat .


0 commentaires

1
votes

En plus de la réponse ci-dessus, l'ajout du - peut être visualisé comme "non". En d'autres termes, placer le signe moins avant C (2: 4, 7:10, 18, 24) , signifie pas les colonnes 2: 4, 7:10, 18, 24. Donc, il renvoie la "Autres" colonnes.


0 commentaires