@ La respuesta de patrickmdmnet es el camino a seguir, pero me puse un poco curioso y solo quería probar una solución programática. Yo estaba en su mayoría curiosidad de cómo el R strplit() Funciton trabajó:
# Test matrix
tmp.mtrx <- matrix(c("1;2", "3;4", "5;6", "7;8"), ncol=1)
# The split
tmp.split <- strsplit(tmp.mtrx, ";")
# Put it all together into a new matrix
new_matrix <- matrix(tmp.split[[1]], ncol=2)
for(i in 2:length(tmp.split)){
new_matrix <- rbind(new_matrix, tmp.split[[i]])
}
# Do the plot originally asked for
plot(new_matrix[,1], new_matrix[,2])
@ Chl - que estaba buscando la función no listados, hace que la solución más agradable y sin el bucle aunque desde que he estado programando un montón I A menudo me resulta más agradable tener mi código más legible si no tiene un efecto demasiado grande en el rendimiento. Aquí está la solución de Chl en una matriz ligeramente más compleja:
# Test matrix
tmp.mtrx <- matrix(c("1;2", 55, "3;4", 75, "5;6", 85, "7;8", 88), ncol=2)
# The split
tmp.split <- strsplit(tmp.mtrx, ";")
# A vector with all the values, length = (ncol(tmp.mtrx) + 1)*nrow(tmp.mtrx)
tmp.data_vector <- unlist(tmp.split)
# Put it all together into a new matrix
new_matrix <- matrix(tmp.data_vector, ncol=(ncol(tmp.mtrx)+1), byrow=TRUE)
# Do the plot originally asked for
plot(new_matrix[,1], new_matrix[,2])
No es necesario 'imprimir (...)' si está trabajando con R de forma interactiva. La autoimpresión significa que cuando ingresa el nombre de un objeto y presiona return, R invoca 'print()' por usted. –
Eso claramente no ha funcionado; ahora tiene una sola columna de datos en R, con el nombre de columna 'X.Y' y datos de las 2 columnas originales en su archivo CSV concatenado. Es su archivo en realidad ** coma ** separado. Parece que está separado por ';', lo que sugiere que estás usando una computadora en un lugar extranjero donde usas ',' como el lugar decimal. Si es así, use 'read.csv2()' en su lugar. Si ese es el caso, la moral de la historia es verificar que sus datos hayan sido leídos correctamente. Use 'str (foo)' y 'ncol (foo)', 'nrow (foo)' etc. donde 'foo' es el objeto que contiene sus datos. –
@Gavin: o use 'sep ="; "' – nico