¿Cómo conseguir nombres de filas únicos en UNA columna?
Tengo un gran dataframe llamado ‘data’, consideremos esto:
data <- data.frame(DATE = c(2012, 2012, 2013, 2014, 2014, 2015),
NAME = c("A", "G", "N", "L", 'L' "L"),
LCR = c(1, 3, 5, 4, 5, 1),
MWFR=c(0,0,0,0,0,0,1,1),
reg=c(1,1,0,0,1,1,1,1))
y quiero hacer una regresión pero cuando la ejecuto obtengo este error:
`pdata <- pdata.frame(data, index = c(“NAME”, “DATE”))
regmodelfix <- plm(LCR ~ MWFR+reg+ MWFR*reg , model =’within’,data=pdata, effect = ‘twoways’)
error: no se permiten ‘row.names’ duplicados
Además: Mensaje de advertencia:
valores no únicos cuando se establecen`
Me di cuenta de que necesito hacer un nombre único en cada fila de las columnas NAME y DATE, así que intenté hacer make.names pero no funciona. ¿Alguna idea?
davy.ai
Parece que el problema se debe a valores duplicados en la columna de índice. Puede intentar agregar una columna de identificación única al marco de datos antes de convertirlo en un pdata.frame. Aquí hay un ejemplo de código:
Esto debería crear una columna de identificación única llamada “ID” mediante la combinación de las columnas “FECHA” y “NOMBRE”. La función pdata.frame debe utilizar esta identificación única como índice, evitando así el error de “nombres de fila duplicados”.