Hi, It is better to show the data using ?dput(). It is not clear whether your missing values are read as "" or NA in the dataset. Also, assuming that the function is from library(ade4)
#1st case. NAs dat <- structure(list(X = structure(c(1L, 1L, NA, NA, 2L, 2L), .Label = c("df", "rd"), class = "factor"), Y = structure(c(1L, NA, 1L, 2L, NA, 2L), .Label = c("as", "eq"), class = "factor")), .Names = c("X", "Y"), class = "data.frame", row.names = c(NA, -6L)) #2nd case "" dat1 <- structure(list(X = structure(c(2L, 2L, 1L, 1L, 3L, 3L), .Label = c("", "df", "rd"), class = "factor"), Y = structure(c(2L, 1L, 2L, 3L, 1L, 3L), .Label = c("", "as", "eq"), class = "factor")), .Names = c("X", "Y"), class = "data.frame", row.names = c(NA, -6L)) library(ade4) acm.disjonctif(dat) # X.df X.rd Y.as Y.eq #1 1 0 1 0 #2 1 0 0 0 #3 0 0 1 0 #4 0 0 0 1 #5 0 1 0 0 #6 0 1 0 1 acm.disjonctif(dat1) # X. X.df X.rd Y. Y.as Y.eq #1 0 1 0 0 1 0 #2 0 1 0 1 0 0 #3 1 0 0 0 1 0 #4 1 0 0 0 0 1 #5 0 0 1 1 0 0 #6 0 0 1 0 0 1 #It seems that your data is similar to dat1 dat1[dat1==''] <- NA dat1 <- droplevels(dat1) acm.disjonctif(dat1) # X.df X.rd Y.as Y.eq #1 1 0 1 0 #2 1 0 0 0 #3 0 0 1 0 #4 0 0 0 1 #5 0 1 0 0 #6 0 1 0 1 A.K. I have missing values in my data: X Y df as df as eq rd rd eq I am using the function ' acm.disjonctif' in R. But this function considers the missing values as factor (it assigned 1's): X. X.df X.rd Y. Y.as Y.eq 1 0 1 0 0 1 0 2 0 1 0 1 0 0 3 1 0 0 0 1 0 4 1 0 0 0 0 1 5 0 0 1 1 0 0 6 0 0 1 0 0 1 I want to use acm.disjonctif but I do not want to use the missing values (so columns X. and Y.) in this table. How can I solve this problem? ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.