Je souhaite utiliser R en Python, comme fourni par le module Rpy2. Je remarque que R a très pratique[]
opérations par lesquelles vous pouvez extraire les colonnes ou les lignes spécifiques. Comment pourrais-je réaliser une telle fonction par des scripts Python?
Mon idée est de créer un vecteur R et d'ajouter ces éléments voulus dans ce vecteur afin que le vecteur final soit le même que celui de R. J'ai créé un seq()
, mais il semble qu'il a un chiffre initial 1, donc le résultat final serait toujours commencez par le chiffre 1, ce qui n'est pas ce que je veux. Alors, y a-t-il une meilleure façon de faire cela?
Vous pouvez créer un vecteur vide comme ça
Et puis ajoutez des éléments en utilisant c ()
Cependant, comme le dit romunov, il est préférable de pré-allouer un vecteur puis de le remplir (car cela évite de réallouer une nouvelle copie de votre vecteur à chaque fois que vous ajoutez des éléments)
la source
Pour créer un vecteur vide, utilisez:
Veuillez noter que je ne fais aucune hypothèse sur le type de vecteur dont vous avez besoin, par exemple numérique.
Une fois le vecteur créé, vous pouvez y ajouter des éléments comme suit:
Par exemple, pour ajouter la valeur numérique 1:
ou, pour ajouter une valeur de chaîne "a"
la source
vec <- c()
définit vec surNULL
. Si vous voulez un vecteur vide que vous utiliseriezvec <- character()
,vec <- numeric()
etc.J'ai aussi vu
Vous pouvez maintenant concaténer ou lier un vecteur de n'importe quelle dimension à
x
la source
x <- NULL
et ne crée rien d'autre qu'une référence à nulle part.Comme l'a souligné Brani, vector () est une solution, eg
newVector <- vector(mode = "numeric", length = 50)
renverra un vecteur nommé "newVector" avec 50 "0" comme valeurs initiales. Il est également assez courant d'ajouter simplement le nouveau scalaire à un vecteur existant pour arriver à un vecteur étendu, par exemple
aVector <- c(aVector, newScalar)
la source
Dans rpy2, la manière d'obtenir le même opérateur que "[" avec R est d'utiliser ".rx". Voir la documentation sur extraction avec rpy2
Pour créer des vecteurs, si vous connaissez votre chemin avec Python, il ne devrait y avoir aucun problème. Voir la documentation sur la création de vecteurs
la source