names(U1)
[1] "username" "review_count" "forum_posts" "age" "avg_interval"
[6] "avg_sim" "class"
Entonces, ¿cómo creo un marco de datos vacío U1.RN que tendrá las mismas columnas que U1?Crear dataframe vacío en R con las mismas columnas
names(U1)
[1] "username" "review_count" "forum_posts" "age" "avg_interval"
[6] "avg_sim" "class"
Entonces, ¿cómo creo un marco de datos vacío U1.RN que tendrá las mismas columnas que U1?Crear dataframe vacío en R con las mismas columnas
Usted puede hacer esto:
U1.RN <- U1[0,]
Perfecto .....> U1.RN <-U1 [0,] > nombres (U1.RN) [1] "usuario" "review_count" "forum_posts" "edad" "avg_interval" [6] "avg_sim" "clase" > nrow (U1) [1] 6000 > nrow (U1.RN) [1] 0 – Tathagata
1 aseado !!!!!! !! (el extra! era para redondear el límite de caracteres mínimo, oh, espera, ... ;-) –
Usando dplyr
, hay algunas buenas opciones:
slice(U1, 0)
filter(U1, FALSE)
filter(U1, NA)
El enfoque slice
es probablemente más claro.
En la línea de df [0,] también puede usar una máscara booleana que podría hacer que el código sea más legible: df [FALSE,].
¿Puedo preguntar por qué necesita un marco de datos de 0 filas? Dependiendo de lo que vayas a hacer con él, puede ser más eficiente hacer las cosas de otra manera (por ejemplo, espero que no estés planeando llenar esta fila por fila en un bucle?) –
"por ejemplo, espero que no estés" ¿Está planeando llenar esta fila por fila en un bucle? " - Sí, :(. ¿Cuál es la forma Ry de hacer el equivalente de [pseudocódigo] para (i en 1: 6000) if (pred.U1.nb.c [i] == 'no etiquetado') U1.RN [j ++ ,] <- U1 [i,] [/ pseudocode], donde pred.U1.nb.c es un vector que obtuve de un predict(), y quiero crear un marco de datos seleccionando las filas de U1 que predicen arrojadas ? (... esforzándose por ser prolijo y no confundir al mismo tiempo) – Tathagata
En R, preasigne su almacenamiento! Sabe que desea un marco de datos de 6.000 filas antes del ciclo, así que cree uno y complételo fila por fila. incluso más rápido: crea una matriz de la dimensión correcta, llena esa fila por fila y luego conviértela en un marco de datos, ya que las matrices son mucho más rápidas para trabajar. Si quieres más ayuda (parece que tal vez ni siquiera necesites un bucle, solo una simple indexación y subconjunto/inserción), ¿puede comenzar una nueva Q y proporcionar un pequeño ejemplo adecuado de lo que realmente quiere hacer? Si lo hace, le prometo mirarlo y darle una oportunidad a una respuesta –