Tengo el siguiente marco de datos en R:

>AcceptData
  Mean.Rank Sentence.Type
1       2.5       An+Sp+a
2       2.6      An+Nsp+a
3       2.1       An+Sp-a
4       3.1      An+Nsp-a
5       2.4       In+Sp+a
6       1.7      In+Nsp+a
7       3.1       In+Sp-a
8       3.0      In+Nsp-a

Que quiero parcela, con la Sentencia.Tipo de columna en el eje x, con el nombre real de cada celda como un punto en el eje x. Quiero que el eje y para ir de 1 a 4 en los pasos de .5

Hasta ahora no he sido capaz de trazar este, ni con plot() no con hist(). Sigo recibiendo diferentes tipos de errores, principalmente debido a la naturaleza de la columna de caracteres en los datos.marco.

Sé que esto debería ser fácil para la mayoría, pero soy algo noob con R todavía y después de las horas no puedo obtener el gráco de la derecha. Cualquier ayuda es muy apreciada.

Edición:

Algunos de los errores que me he metido:

> hist(AcceptData$Sentence.Type,AcceptData$Mean.Rank)
Error in hist.default(AcceptData$Sentence.Type, AcceptData$Mean.Rank) : 
  'x' must be numeric

O: (esto no da un error, pero definitivamente no es el gráfico que desea. Tiene todos los valores de x estrecho a la izquierda del eje x)

  plot(AcceptData$Sentence.Type,AcceptData$Mean.Rank,lty=5,lwd=2,xlim=c(1,16),ylim=c(1,4),xla b="Sentence Type",ylab="Mean Ranking",main="Mean Acceptability Ranking per Sentence")
  • Puede dar un ejemplo de lo que has intentado y lo que los mensajes de error fueron?
InformationsquelleAutor HernanLG | 2012-10-22

1 Comentario

  1. 9

    El valor predeterminado plot función tiene un método que le permite a la trama de los factores en el eje de las x, pero para utilizar este servicio, usted tiene que convertir los datos de texto a un factor:

    Aquí está un ejemplo:

    x <- letters[1:5]
    y <- runif(5, 0, 5)
    
    plot(factor(x), y)

    La trama de un personaje contra el vector numérico del vector en R

    Y con datos de ejemplo:

    AcceptData <- read.table(text="
    Mean.Rank Sentence.Type
    1       2.5       An+Sp+a
    2       2.6      An+Nsp+a
    3       2.1       An+Sp-a
    4       3.1      An+Nsp-a
    5       2.4       In+Sp+a
    6       1.7      In+Nsp+a
    7       3.1       In+Sp-a
    8       3.0      In+Nsp-a", stringsAsFactors=FALSE)
    
    plot(Mean.Rank~factor(Sentence.Type), AcceptData, las=2, 
         xlab="", main="Mean Acceptability Ranking per Sentence")

    La trama de un personaje contra el vector numérico del vector en R

    • Gracias Andrie. Este hecho ayuda mucho con el gráfico. Es casi allí. Ahora Lo que me falta es tener como etiquetas en el eje x los nombres reales de cada célula en el Enviado.Tipo de columna.
    • He añadido un ejemplo completo con sus datos
    • Andrie. Gracias esto es bastante más de lo que yo quería. Yo ahora sólo luchando porque me gustaría más pequeños símbolos para cada valor del eje x. (las líneas no se ven muy bien). Me gustaría obtener pequeños puntos o incluso histograma de barras sería bueno. El problema es que no puedo usar hist función porque el argumento x es no numérico, y con parcela estoy tratando mediante la adición de los parámetros: type=»p»,pch=»s» pero no cambio nada. Gracias de nuevo por la ayuda.

Dejar respuesta

Please enter your comment!
Please enter your name here