0 calificaciones0% encontró este documento útil (0 votos)
34 vistas3 páginas
El documento contiene preguntas y respuestas sobre operaciones con vectores en R. Estas incluyen cómo insertar un valor en un vector en una posición dada, comparar vectores con valores perdidos, extraer valores de un vector usando un factor, crear un factor para dividir un vector numérico en intervalos, extraer registros de un archivo de datos según criterios lógicos, y simular resultados tomando la media de números aleatorios usando sapply.
El documento contiene preguntas y respuestas sobre operaciones con vectores en R. Estas incluyen cómo insertar un valor en un vector en una posición dada, comparar vectores con valores perdidos, extraer valores de un vector usando un factor, crear un factor para dividir un vector numérico en intervalos, extraer registros de un archivo de datos según criterios lógicos, y simular resultados tomando la media de números aleatorios usando sapply.
Copyright:
Attribution Non-Commercial (BY-NC)
Formatos disponibles
Descargue como TXT, PDF, TXT o lea en línea desde Scribd
El documento contiene preguntas y respuestas sobre operaciones con vectores en R. Estas incluyen cómo insertar un valor en un vector en una posición dada, comparar vectores con valores perdidos, extraer valores de un vector usando un factor, crear un factor para dividir un vector numérico en intervalos, extraer registros de un archivo de datos según criterios lógicos, y simular resultados tomando la media de números aleatorios usando sapply.
Copyright:
Attribution Non-Commercial (BY-NC)
Formatos disponibles
Descargue como TXT, PDF, TXT o lea en línea desde Scribd
#PREGUNTA 1 ¿Cual es la manera mas conveniente de insertar un valor entre dos elem
entos de un vector en una posición dada?
#RESPUESTA #Supongamos que tenemos un vector x con los siguientes 7 valores: 2,3,5,11,13,17 ,19. #Entre los valores 5 y 11, es decir en la cuarta posicion, se desea insertar el valor 7 x=c(2,3,5,11,13,17,19); x #se creara un vector y con el valor a insertar asi: y<-c(x[1:3],7,x[4:7]); y #------------------------------------------------------------------------------- -------------------------------- #PREGUNTA 2 ¿Como podria usted revisar si dos vectores son iguales, teniendo en cu enta que ellos podrian tener #valores perdidos NA? #RESPUESTA #Supongamos que los vectores a comparar son x<-c(3,NA,7,8) x y<-c(3,NA,7,8) y #usaria esta orden all(is.na(y)==is.na(x))& all((x==y)[!is.na(x)]) #TRUE indica que son iguales y FALSE indica que no lo son #------------------------------------------------------------------------------- -------------------------------- #PREGUNTA 3 ¿Si x es un factor con n niveles e y es un vector de longitud n, que o curre si usted #calcula y[x]? #RESPUESTA #Si se toma la misma informacion del ejemplo dado en el texto de Dalgaar, en el que se observo #el nivel de dolor en 5 pacientes, los cuales se guardan en el vector pain pain<-c(0,3,2,2,1) pain #a continuacion se crea el factor fpain fpain<-factor(pain,levels=0:3) levels(fpain)<-c("none","mild","medium","severe") fpain #Ya que el factor presentado tiene 4 niveles se creara un vector y con 4 valores : 33,25,67,89 y<-c(33,25,67,89) y y[fpain] #Lo que se observa es que ahora los niveles del factor son los valores contenido s en el vector y #------------------------------------------------------------------------------- ---------------------------------- #PREGUNTA 4 La funcion cut es usada para crear un factor a partir de un vector n umerico.Vea los detalles en la pagina de ayuda. #Crear un factor en el cual la blood.glucose variable en el thuesen data este di vidida en los intervalos #(4,7], (7,9], (9,12] y (12,20].Cambie los nombres de los niveles a low, mediun, high y very high. #RESPUESTA #se creara un vector llamado glucosa con los valores de glucosa que aparecen en el archvo de datos thuesen glucosa<-c(15.3,10.8,8.1,19.5,7.2,5.3,9.3,11.1,7.5,12.2,6.7,5.2,19,15.1,6.7,8.6, 4.2,10.3,12.5,16.1,13.3,4.9,8.8,9.5) glucosa #En la siguiente linea se crearan las 4 clases pedidas clases=cut(glucosa,breaks=c(4,7,9,12,20)) # Acontinuacion R nos indica la clase a la que pertenece cada una de las 24 obse rvaciones clases #Mediante la siguiente orden R nos dira cuantas observaciones corresponden a cad a clase table(clases) #La siguiente linea le indica a R cambiar el nombre de las clases por low, medi un, high y very high levels(clases)<-c("low","medium","high","very high") clases table(clases) #------------------------------------------------------------------------------- -------------------------------------- #PREGUNTA 5 Esccriba la expresion logica a usar para extraer del archivo de dat os juul # los registros de mujeres entre 7 y 14 años de edad. #RESPUESTA #Una vez cargada la libreria ISwR( en la consola de R ingresar por el menu paque tes y seleecionar instalar, luego buscar ISwR #luego escribir en la consola de R la siguiente instruccion library(ISwR) #para ver el archivo juul se escribe la siguiente instruccion juul #este archivo contiene 1339 registros #para responder a la pregunta formulada se puede usar la siguiente instruccion juul.girl<-juul[juul$sex==2 & juul$age<7 & juul$age<14,] juul.girl #------------------------------------------------------------------------------- ------------------------------------------ #PREGUNTA 6 ¿Que ocurre si usted cambia los niveles de un factor( con niveles) y d a los mismos valores a dos o mas niveles? #RESPUESTA # Si se toman los mismos datos del PROBLEMA 4 y al momento de rotular los nivele s repetimos uno de ellos,por ejemplo "low" , lo # que se observa es que los valores del mismo nivel se reunen en uno solo. #------------------------------------------------------------------------------- ------------------------------------------ #PREGUNTA 7 Use la funcion sapply para simular el resultado de tomar la media de 100 numeros aleatorios de la distribucion normal #para 10 muestras independientes. #RESPUESTA #Para la generacion de los 100 numeros aleatorios por muestra se usa la funcion rnorm, suponiendo una media de 50 y una desviacion #estandar de 3. rnorm(100,50,3) #La media aritmetica de los 100 numeros se calcula en la siguiente linea mean(rnorm(100,50,3)) #para hacer lo anterior 10 veces, se puede usar la instruccion sapply(1:10, function(i) mean(rnorm(100,50,3))) #------------------------------------------------------------------------------- ----------------------------------------------- #PREGUNTA 8 En un archivo de texto realizar el cambio de NA por . y visualizar e l cambio en R, usando el archivo thuesen con #write.table #RESPUESTA #Podria usarse la siguiente instruccion write.table(thuesen, file="hugo.txt") read.table("hugo.txt", na.strings=".")