Articles of r

cómo calcular la media / mediana por grupo en un dataframe en r

Tengo un dataframe que registra cuánto dinero gasta un cliente en detalle como el siguiente: custid, value 1, 1 1, 3 1, 2 1, 5 1, 4 1, 1 2, 1 2, 10 3, 1 3, 2 3, 5 ¿Cómo calcule los charicteristics usando mean, max, mediana, std, etc. como el siguiente? Use alguna función […]

Devolver funciones anónimas de lapply – ¿qué está pasando mal?

Al intentar crear una lista de funciones similares utilizando lapply , encuentro que todas las funciones en la lista son idénticas e iguales a lo que debería ser el elemento final. Considera lo siguiente: pow <- function(x,y) x^y pl <- lapply(1:3,function(y) function(x) pow(x,y)) pl [[1]] function (x) pow(x, y) [[2]] function (x) pow(x, y) [[3]] […]

Chi Square Analysis utilizando for loop en R

Estoy tratando de hacer un análisis de chi cuadrado para todas las combinaciones de variables en los datos y mi código es: Data <- esoph[ , 1:3] OldStatistic <- NA for(i in 1:(ncol(Data)-1)){ for(j in (i+1):ncol(Data)){ Statistic <- data.frame("Row"=colnames(Data)[i], "Column"=colnames(Data)[j], "Chi.Square"=round(chisq.test(Data[ ,i], Data[ ,j])$statistic, 3), "df"=chisq.test(Data[ ,i], Data[ ,j])$parameter, "p.value"=round(chisq.test(Data[ ,i], Data[ ,j])$p.value, 3), row.names=NULL) […]

problema de punto flotante en R?

Posible duplicado: ¿Por qué estos números no son iguales? La expresión siguiente, que evalúa a 0.1, se considera mayor que 0.1. > round(1740/600,0) – 1740/600 [1] 0.1 > (round(1740/600,0) – 1740/600) (round(1740/600,0) – 1740/600) <= 0.1000000000000000000000000000000000000001 [1] TRUE Pensando que el problema podría deberse al redondeo, intenté esto con el mismo resultado: > 3 – […]

duplicados en múltiples columnas

Tengo un dataframe como ese > df abcd 1 1 2 A 1001 2 2 4 B 1002 3 3 6 B 1002 4 4 8 C 1003 5 5 10 D 1004 6 6 12 D 1004 7 7 13 E 1005 8 8 14 E 1006 Quiero eliminar las filas donde hay valores […]

contar el número de filas en un dataframe en R basado en el grupo

Tengo un dataframe en R como este: ID MONTH-YEAR VALUE 110 JAN. 2012 1000 111 JAN. 2012 2000 . . . . 121 FEB. 2012 3000 131 FEB. 2012 4000 . . . . Por lo tanto, para cada mes de cada año hay n filas y pueden estar en cualquier orden (es decir, no […]

read.csv, encabezado en primera línea, omita segunda línea

Tengo un archivo CSV con dos filas de encabezado, la primera fila quiero ser el encabezado, pero la segunda fila que quiero descartar. Si hago el siguiente comando: data <- read.csv("HK Stocks bbg.csv", header = T, stringsAsFactors = FALSE) La primera fila se convierte en el encabezado y la segunda fila del archivo se convierte […]

¿Cómo leo solo líneas que cumplen una condición de un CSV en R?

Intento leer un gran archivo csv en R. Aunque el archivo es grande, solo quiero trabajar con algunas de las filas que cumplen una condición en particular (por ejemplo, Variable2> = 3). Este es un conjunto de datos mucho más pequeño. Me gustaría leer estas líneas directamente en un dataframe en lugar de cargar todo […]

Extrayendo números únicos de una cadena en R

Tengo una lista de cadenas que contienen caracteres aleatorios como: list=list() list[1] = “djud7+dg[a]hs667” list[2] = “7fd*hac11(5)” list[3] = “2tu,g7gka5” Me gustaría saber qué números están presentes al menos una vez ( unique() ) en esta lista. La solución de mi ejemplo es: solución: c(7,667,11,5,2) Si alguien tiene un método que no considera 11 como […]

Subcontar datos.tabla por segunda columna solo de una clave de 2 columnas, utilizando búsqueda binaria, no exploración vectorial

Recientemente descubrí la búsqueda binaria en data.table . Si la tabla está ordenada en varias teclas, ¿es posible buscar solo en la segunda tecla? DT = data.table(x=sample(letters,1e7,T),y=sample(1:25,1e7,T),rnorm(1e7)) setkey(DT,x,y) #R> DT[J(‘x’)] # xy V3 # 1: x 1 0.89109 # 2: x 1 -2.01457 # — #384922: x 25 0.09676 #384923: x 25 0.25168 #R> DT[J(‘x’,3)] […]