You messed up the quote marks and the "library" function is not
capitalized. You defined your search list by the name "list", which is
also the name of a commonly used base function in R. Also, the vector you gave
to GetAllSubsets had several misleading invisible conversions to character
because you concatenated various types together. This will in turn lead to more
invisible conversions to character when testing of columns z and J occurs. Try
using a decent text editor to create your email, and keep studying the
Introduction to R document that comes with the software.
I don't know of a computationally efficient solution to this problem as you
have described it, and with the type conversions going on I am not sure it is
even possible to get a correct solution, but the code below is my attempt. I
renamed your "list" to "lst".
lapply(
dataframe
, function(x){
tst <- function(x){all(x %in% y)}
!is.na( Position( tst,lst ) )
}
)
---------------------------------------------------------------------------
Jeff Newmiller The ..... ..... Go Live...
DCN:<jdnewmil at dcn.davis.ca.us> Basics: ##.#. ##.#. Live
Go...
Live: OO#.. Dead: OO#.. Playing
Research Engineer (Solar/Batteries O.O#. #.O#. with
/Software/Embedded Controllers) .OO#. .OO#. rocks...1k
---------------------------------------------------------------------------
Sent from my phone. Please excuse my brevity.
On September 25, 2014 4:53:38 PM PDT, "Maicel Monz?n P?rez" <maicel
at infomed.sld.cu> wrote:>Hello list
>I would like to know how can i detect dataframe columns that have as
>unique values elements of a list.
>For example, at a given dataframe to look for columns that unique
>values
>are elements of a list like this one
>
>
>dataframe<-data.frame(
>x = c("yes?, "1?, "no?, "no?),
>y = c("black?, "red?, "NA?, "white?),
>z= c(T,F,T,T),
>J= c(2,7,8,9))
>Library(DescTools)
>
>list<-GetAllSubsets(c(NA,0,1,2,"yes","y","no"),min.n
= 2, max.n = 5)
>
>......and to obtain the following vector..
>TRUE,FALSE, FALSE, FALSE
>
>Best regards
>Maicel Monzon
>
>
>--
>Nunca digas nunca, di mejor: gracias, permiso, disculpe.
>
>Este mensaje le ha llegado mediante el servicio de correo electronico
>que ofrece Infomed para respaldar el cumplimiento de las misiones del
>Sistema Nacional de Salud. La persona que envia este correo asume el
>compromiso de usar el servicio a tales fines y cumplir con las
>regulaciones establecidas
>
>Infomed: http://www.sld.cu/
>
>______________________________________________
>R-help at 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.