unir una posiciones matriz matrices lista elementos ejemplos arreglo array agregar python r vector rpy2

python - una - Cómo crear un vector R vacío para agregar nuevos elementos



posiciones en una matriz python (7)

Como señala Brani, el vector () es una solución, por ejemplo

newVector <- vector(mode = "numeric", length = 50)

devolverá un vector llamado "newVector" con 50 "0" como valores iniciales. También es bastante común agregar el nuevo escalar a un vector existente para llegar a un vector expandido, por ejemplo

aVector <- c(aVector, newScalar)

Quiero usar R en Python, como lo proporciona el módulo Rpy2. Observo que R tiene operaciones [] muy prácticas mediante las cuales puede extraer las columnas o líneas específicas. ¿Cómo podría lograr esa función con los scripts de Python?

Mi idea es crear un vector R y agregar los elementos deseados en este vector para que el vector final sea el mismo que en R. seq() un seq() , pero parece que tiene un dígito inicial 1, por lo que el final El resultado siempre comenzaría con el dígito 1, que no es lo que quiero. Entonces, ¿hay una mejor manera de hacer esto?


En rpy2, la forma de obtener el mismo operador como "[" con R es usar ".rx". Consulte la documentación sobre la extracción con rpy2

Para crear vectores, si conoce su camino con Python, no debería haber ningún problema. Consulte la documentación sobre creación de vectores


Para crear un vector vacío use:

vec <- c();

Tenga en cuenta que no estoy haciendo suposiciones sobre el tipo de vector que necesita, por ejemplo, numérico.

Una vez que se ha creado el vector, puede agregarle elementos de la siguiente manera:

Por ejemplo, para agregar el valor numérico 1:

vec <- c(vec, 1);

o, para agregar un valor de cadena "a"

vec <- c(vec, "a");


Preasignar un vector con

> (a <- rep(NA, 10)) [1] NA NA NA NA NA NA NA NA NA NA

Luego puede usar [] para insertar valores en él.


Puedes crear un vector vacío como tal

vec <- numeric(0)

Y luego agrega elementos usando c ()

vec <- c(vec, 1:5)

Sin embargo, como dice Romunov, es mucho mejor preasignar un vector y luego poblarlo (ya que esto evita la reasignación de una nueva copia de tu vector cada vez que agregas elementos).


También he visto

x <- {}

Ahora puede concatenar o enlazar un vector de cualquier dimensión a x

rbind(x, 1:10) cbind(x, 1:10) c(x, 10)


vec <- vector()

Ver también ayuda vector

?vector