Tengo que crear una matriz de distancias mediante R. Mis datos están en el archivo de excel que contiene 300 filas y 10 columnas. Tengo que crear matriz de distancias basadas en los valores de 9 de columna.Por ejemplo

   s s s s s
s  1
s  2 2
s  3 3 4
s  4 4 7 3
s  5 5 8 2 8

Cómo crear este tipo de matriz?

¿Sabe usted cómo obtener los datos de excel en R? Realmente vas a hacer dos preguntas aquí.

OriginalEl autor akash | 2011-08-03

2 Comentarios

  1. 8

    Opción más fácil, lo sé, es para guardar la hoja de Excel que contiene los datos como un archivo CSV. Asegúrese de que sólo la primera fila y la columna de la hoja de contener alguna de las muestras o los nombres de las variables.

    A continuación, lea en R usando:

    dat <- read.csv("path/to/my/file.csv")

    y, a continuación, utilizar dist() el 9 de columna para calcular la diferencia de la matriz de

    dij <- dist(dat[, 9])

    Si quieres algo distinto de la distancia Euclidiana, consulte las opciones en ?dist y si estos no se ajustan, pruebe el daisy() función en el paquete recomendado clúster, o vegdist() función en el paquete vegano o la proxy paquete.

    He probado tu código .Pero tengo el error como este.dij <- dist(myfile[, 9]) Error en miarchivo[, 9] : número incorrecto de dimensiones

    OriginalEl autor Gavin Simpson

  2. 4

    Si sus números están en un vector llamado z, entonces dist(z) devuelve una matriz de distancias de euclídea (sqrt(dx^2+dy^2)) valores. Ver help(dist) para obtener más información.

    rápido y sucio respuesta es rápida y sucia…. Probablemente más de lo que obtendría en r-help: «?dist»

    OriginalEl autor Spacedman

Dejar respuesta

Please enter your comment!
Please enter your name here