You are missing a comma between "MARITAL" and "JOBSTATUS". On Tue, Apr 10, 2018 at 10:27 AM, Saif Tauheed <saif.tauheed at gmail.com> wrote:> I run this command for converting the numerical variable into factor. > However, I get the following error message. > > > cols<- c(?GrMM", "RELG", "CASTE1", "SECTOR", "SECTOR4","AGE", "MARITAL" > "JOBSTATUS", "ENG", "EDU", "PARENT_EDU", "MASSMEDIA_F", "MASSMEDIA_M", > "HomeComputer", "HomeInternet") for (i in cols) {data.frame[,i]> as.factor(data.frame[,i])} > > > Error: unexpected string constant in ?cols<- c(?GrMM", "RELG", "CASTE1", > "SECTOR", "SECTOR4","AGE", "MARITAL" "JOBSTATUS"" > > Please help. > > Regards > Afzal > > > > On 10-Apr-2018, at 12:14 AM, Rui Barradas <ruipbarradas at sapo.pt> wrote: > > > > Hello, > > > > Though Bert's and David's answers are what you should do, note that some > R functions that need factors will coerce their input variables when > necessary. > > Have you tried to run the code you haven't posted without coercing to > factor? It might run... > > > > Hope this helps, > > > > Rui Barradas > > > > On 4/9/2018 6:11 PM, David L Carlson wrote: > >> Try the help files: > >> ?factor > >> ---------------------------------------- > >> David L Carlson > >> Department of Anthropology > >> Texas A&M University > >> College Station, TX 77843-4352 > >> -----Original Message----- > >> From: R-help <r-help-bounces at r-project.org> On Behalf Of Saif Tauheed > >> Sent: Monday, April 9, 2018 11:29 AM > >> To: r-help at r-project.org > >> Subject: Re: [R] convert numeric variables to factor > >> Dear Sir, > >> I have xlsx data set which I have imported to R studio. Now some of the > variables are defined as numeric but I want define them as factor variable > so that I run classification algorithm in R. > >> Please to covert the variables. > >> Thanks and Regards > >> Abu Afzal > >> PhD Eco > >> JNU > >> India > >> ______________________________________________ > >> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see > 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. > >> ______________________________________________ > >> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see > >> 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. > > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see > 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. >[[alternative HTML version deleted]]
Thank you very much. After that I have the following error: cols<- c("GrMM", "RELG", "CASTE1", "SECTOR", "SECTOR4","AGE", "MARITAL", "JOBSTATUS", "ENG", "EDU", "PARENT_EDU", "MASSMEDIA_F", "MASSMEDIA_M", "HomeComputer", "HomeInternet")> for (I in cols) {data.frame[,i]= as.factor(data.frame[,i])}Error in sort.list(y) : 'x' must be atomic for 'sort.list' Have you called ?sort? on a list?> On 10-Apr-2018, at 3:12 PM, Eric Berger <ericjberger at gmail.com> wrote: > > You are missing a comma between "MARITAL" and "JOBSTATUS". > > On Tue, Apr 10, 2018 at 10:27 AM, Saif Tauheed <saif.tauheed at gmail.com <mailto:saif.tauheed at gmail.com>> wrote: > I run this command for converting the numerical variable into factor. However, I get the following error message. > > > cols<- c(?GrMM", "RELG", "CASTE1", "SECTOR", "SECTOR4","AGE", "MARITAL" "JOBSTATUS", "ENG", "EDU", "PARENT_EDU", "MASSMEDIA_F", "MASSMEDIA_M", "HomeComputer", "HomeInternet") for (i in cols) {data.frame[,i]= as.factor(data.frame[,i])} > > > Error: unexpected string constant in ?cols<- c(?GrMM", "RELG", "CASTE1", "SECTOR", "SECTOR4","AGE", "MARITAL" "JOBSTATUS"" > > Please help. > > Regards > Afzal > > > > On 10-Apr-2018, at 12:14 AM, Rui Barradas <ruipbarradas at sapo.pt <mailto:ruipbarradas at sapo.pt>> wrote: > > > > Hello, > > > > Though Bert's and David's answers are what you should do, note that some R functions that need factors will coerce their input variables when necessary. > > Have you tried to run the code you haven't posted without coercing to factor? It might run... > > > > Hope this helps, > > > > Rui Barradas > > > > On 4/9/2018 6:11 PM, David L Carlson wrote: > >> Try the help files: > >> ?factor > >> ---------------------------------------- > >> David L Carlson > >> Department of Anthropology > >> Texas A&M University > >> College Station, TX 77843-4352 > >> -----Original Message----- > >> From: R-help <r-help-bounces at r-project.org <mailto:r-help-bounces at r-project.org>> On Behalf Of Saif Tauheed > >> Sent: Monday, April 9, 2018 11:29 AM > >> To: r-help at r-project.org <mailto:r-help at r-project.org> > >> Subject: Re: [R] convert numeric variables to factor > >> Dear Sir, > >> I have xlsx data set which I have imported to R studio. Now some of the variables are defined as numeric but I want define them as factor variable so that I run classification algorithm in R. > >> Please to covert the variables. > >> Thanks and Regards > >> Abu Afzal > >> PhD Eco > >> JNU > >> India > >> ______________________________________________ > >> R-help at r-project.org <mailto:R-help at r-project.org> mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help <https://stat.ethz.ch/mailman/listinfo/r-help> > >> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html <http://www.r-project.org/posting-guide.html> > >> and provide commented, minimal, self-contained, reproducible code. > >> ______________________________________________ > >> R-help at r-project.org <mailto:R-help at r-project.org> mailing list -- To UNSUBSCRIBE and more, see > >> https://stat.ethz.ch/mailman/listinfo/r-help <https://stat.ethz.ch/mailman/listinfo/r-help> > >> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html <http://www.r-project.org/posting-guide.html> > >> and provide commented, minimal, self-contained, reproducible code. > > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at r-project.org <mailto:R-help at r-project.org> mailing list -- To UNSUBSCRIBE and more, see > https://stat.ethz.ch/mailman/listinfo/r-help <https://stat.ethz.ch/mailman/listinfo/r-help> > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html <http://www.r-project.org/posting-guide.html> > and provide commented, minimal, self-contained, reproducible code. >[[alternative HTML version deleted]]
Not sure whether this is the problem but calling your data frame data.frame is not a good idea. On 10/04/2018 11:48, Saif Tauheed wrote:> Thank you very much. > > After that I have the following error: > > cols<- c("GrMM", "RELG", "CASTE1", "SECTOR", "SECTOR4","AGE", "MARITAL", "JOBSTATUS", "ENG", "EDU", "PARENT_EDU", "MASSMEDIA_F", "MASSMEDIA_M", "HomeComputer", "HomeInternet") >> for (I in cols) {data.frame[,i]= as.factor(data.frame[,i])} > > > Error in sort.list(y) : 'x' must be atomic for 'sort.list' > Have you called ?sort? on a list? > > > > > > >> On 10-Apr-2018, at 3:12 PM, Eric Berger <ericjberger at gmail.com> wrote: >> >> You are missing a comma between "MARITAL" and "JOBSTATUS". >> >> On Tue, Apr 10, 2018 at 10:27 AM, Saif Tauheed <saif.tauheed at gmail.com <mailto:saif.tauheed at gmail.com>> wrote: >> I run this command for converting the numerical variable into factor. However, I get the following error message. >> >>> cols<- c(?GrMM", "RELG", "CASTE1", "SECTOR", "SECTOR4","AGE", "MARITAL" "JOBSTATUS", "ENG", "EDU", "PARENT_EDU", "MASSMEDIA_F", "MASSMEDIA_M", "HomeComputer", "HomeInternet") for (i in cols) {data.frame[,i]= as.factor(data.frame[,i])} >> >> >> Error: unexpected string constant in ?cols<- c(?GrMM", "RELG", "CASTE1", "SECTOR", "SECTOR4","AGE", "MARITAL" "JOBSTATUS"" >> >> Please help. >> >> Regards >> Afzal >> >> >>> On 10-Apr-2018, at 12:14 AM, Rui Barradas <ruipbarradas at sapo.pt <mailto:ruipbarradas at sapo.pt>> wrote: >>> >>> Hello, >>> >>> Though Bert's and David's answers are what you should do, note that some R functions that need factors will coerce their input variables when necessary. >>> Have you tried to run the code you haven't posted without coercing to factor? It might run... >>> >>> Hope this helps, >>> >>> Rui Barradas >>> >>> On 4/9/2018 6:11 PM, David L Carlson wrote: >>>> Try the help files: >>>> ?factor >>>> ---------------------------------------- >>>> David L Carlson >>>> Department of Anthropology >>>> Texas A&M University >>>> College Station, TX 77843-4352 >>>> -----Original Message----- >>>> From: R-help <r-help-bounces at r-project.org <mailto:r-help-bounces at r-project.org>> On Behalf Of Saif Tauheed >>>> Sent: Monday, April 9, 2018 11:29 AM >>>> To: r-help at r-project.org <mailto:r-help at r-project.org> >>>> Subject: Re: [R] convert numeric variables to factor >>>> Dear Sir, >>>> I have xlsx data set which I have imported to R studio. Now some of the variables are defined as numeric but I want define them as factor variable so that I run classification algorithm in R. >>>> Please to covert the variables. >>>> Thanks and Regards >>>> Abu Afzal >>>> PhD Eco >>>> JNU >>>> India >>>> ______________________________________________ >>>> R-help at r-project.org <mailto:R-help at r-project.org> mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help <https://stat.ethz.ch/mailman/listinfo/r-help> >>>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html <http://www.r-project.org/posting-guide.html> >>>> and provide commented, minimal, self-contained, reproducible code. >>>> ______________________________________________ >>>> R-help at r-project.org <mailto:R-help at r-project.org> mailing list -- To UNSUBSCRIBE and more, see >>>> https://stat.ethz.ch/mailman/listinfo/r-help <https://stat.ethz.ch/mailman/listinfo/r-help> >>>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html <http://www.r-project.org/posting-guide.html> >>>> and provide commented, minimal, self-contained, reproducible code. >> >> >> [[alternative HTML version deleted]] >> >> ______________________________________________ >> R-help at r-project.org <mailto:R-help at r-project.org> mailing list -- To UNSUBSCRIBE and more, see >> https://stat.ethz.ch/mailman/listinfo/r-help <https://stat.ethz.ch/mailman/listinfo/r-help> >> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html <http://www.r-project.org/posting-guide.html> >> and provide commented, minimal, self-contained, reproducible code. >> > > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see > 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. >-- Michael http://www.dewey.myzen.co.uk/home.html
> From: R-help [mailto:r-help-bounces at r-project.org] On Behalf Of Saif Tauheed > After that I have the following error: > > cols<- c("GrMM", "RELG", "CASTE1", "SECTOR", "SECTOR4","AGE", "MARITAL", > "JOBSTATUS", "ENG", "EDU", "PARENT_EDU", "MASSMEDIA_F", > "MASSMEDIA_M", "HomeComputer", "HomeInternet") > > for (I in cols) {data.frame[,i]= as.factor(data.frame[,i])} > > > Error in sort.list(y) : 'x' must be atomic for 'sort.list' > Have you called ?sort? on a list? >First, please post reproducible examples; your code will not run in anyone else's session (for example you have not shown where the data frame comes from), and if the code does not generate the error message reproducibly, noone can tell you exactly why it happens Second, please _follow_ the posting guide and work through the suggested steps before posting a question to this list. An internet search for this error would have told you what causes it. Finally: - Your loop will not work because your loop variable is I and the index is i; they are different in R. You'll just update the same column (i) lots of times, assuming i is defined. - The error message arises from a call to factor() in as.factor(). It tells you that the column being converted is not a simple vector. That in turn tells me that you have not constructed your data frame correctly. I can't tell you what you did wrong there. - As another poster has said, data.frame is the name of a function - one that construicts a data frame. R can often tell which you want, but it is never safe to use the name of a function as the name of a data object. Use a different name for your data frame. S Ellison ******************************************************************* This email and any attachments are confidential. Any use, copying or disclosure other than by the intended recipient is unauthorised. If you have received this message in error, please notify the sender immediately via +44(0)20 8943 7000 or notify postmaster at lgcgroup.com and delete this message and any copies from your computer and network. LGC Limited. Registered in England 2991879. Registered office: Queens Road, Teddington, Middlesex, TW11 0LY, UK
Hi You could instead of selecting columns by name select them by number Something like your.data[,2:3] <- do.call(data.frame, lapply(your.data[,2:3], factor)) or you could construct a vector of column numbers x <- c(2,3) Cheers Petr -----Original Message----- From: R-help [mailto:r-help-bounces at r-project.org] On Behalf Of Saif Tauheed Sent: Tuesday, April 10, 2018 12:49 PM To: Eric Berger <ericjberger at gmail.com> Cc: r-help at r-project.org Subject: Re: [R] convert numeric variables to factor Thank you very much. After that I have the following error: cols<- c("GrMM", "RELG", "CASTE1", "SECTOR", "SECTOR4","AGE", "MARITAL", "JOBSTATUS", "ENG", "EDU", "PARENT_EDU", "MASSMEDIA_F", "MASSMEDIA_M", "HomeComputer", "HomeInternet")> for (I in cols) {data.frame[,i]= as.factor(data.frame[,i])}Error in sort.list(y) : 'x' must be atomic for 'sort.list' Have you called ?sort? on a list?> On 10-Apr-2018, at 3:12 PM, Eric Berger <ericjberger at gmail.com> wrote: > > You are missing a comma between "MARITAL" and "JOBSTATUS". > > On Tue, Apr 10, 2018 at 10:27 AM, Saif Tauheed <saif.tauheed at gmail.com <mailto:saif.tauheed at gmail.com>> wrote: > I run this command for converting the numerical variable into factor. However, I get the following error message. > > > cols<- c(?GrMM", "RELG", "CASTE1", "SECTOR", "SECTOR4","AGE", > > "MARITAL" "JOBSTATUS", "ENG", "EDU", "PARENT_EDU", "MASSMEDIA_F", > > "MASSMEDIA_M", "HomeComputer", "HomeInternet") for (i in cols) > > {data.frame[,i]= as.factor(data.frame[,i])} > > > Error: unexpected string constant in ?cols<- c(?GrMM", "RELG", "CASTE1", "SECTOR", "SECTOR4","AGE", "MARITAL" "JOBSTATUS"" > > Please help. > > Regards > Afzal > > > > On 10-Apr-2018, at 12:14 AM, Rui Barradas <ruipbarradas at sapo.pt <mailto:ruipbarradas at sapo.pt>> wrote: > > > > Hello, > > > > Though Bert's and David's answers are what you should do, note that some R functions that need factors will coerce their input variables when necessary. > > Have you tried to run the code you haven't posted without coercing to factor? It might run... > > > > Hope this helps, > > > > Rui Barradas > > > > On 4/9/2018 6:11 PM, David L Carlson wrote: > >> Try the help files: > >> ?factor > >> ---------------------------------------- > >> David L Carlson > >> Department of Anthropology > >> Texas A&M University > >> College Station, TX 77843-4352 > >> -----Original Message----- > >> From: R-help <r-help-bounces at r-project.org > >> <mailto:r-help-bounces at r-project.org>> On Behalf Of Saif Tauheed > >> Sent: Monday, April 9, 2018 11:29 AM > >> To: r-help at r-project.org <mailto:r-help at r-project.org> > >> Subject: Re: [R] convert numeric variables to factor Dear Sir, I > >> have xlsx data set which I have imported to R studio. Now some of the variables are defined as numeric but I want define them as factor variable so that I run classification algorithm in R. > >> Please to covert the variables. > >> Thanks and Regards > >> Abu Afzal > >> PhD Eco > >> JNU > >> India > >> ______________________________________________ > >> R-help at r-project.org <mailto:R-help at r-project.org> mailing list -- > >> To UNSUBSCRIBE and more, see > >> https://stat.ethz.ch/mailman/listinfo/r-help > >> <https://stat.ethz.ch/mailman/listinfo/r-help> > >> PLEASE do read the posting guide > >> http://www.R-project.org/posting-guide.html > >> <http://www.r-project.org/posting-guide.html> > >> and provide commented, minimal, self-contained, reproducible code. > >> ______________________________________________ > >> R-help at r-project.org <mailto:R-help at r-project.org> mailing list -- > >> To UNSUBSCRIBE and more, see > >> https://stat.ethz.ch/mailman/listinfo/r-help > >> <https://stat.ethz.ch/mailman/listinfo/r-help> > >> PLEASE do read the posting guide > >> http://www.R-project.org/posting-guide.html > >> <http://www.r-project.org/posting-guide.html> > >> and provide commented, minimal, self-contained, reproducible code. > > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at r-project.org <mailto:R-help at r-project.org> mailing list -- To > UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help > <https://stat.ethz.ch/mailman/listinfo/r-help> > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > <http://www.r-project.org/posting-guide.html> > and provide commented, minimal, self-contained, reproducible code. >[[alternative HTML version deleted]] ______________________________________________ R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see 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. ________________________________ Tento e-mail a jak?koliv k n?mu p?ipojen? dokumenty jsou d?v?rn? a jsou ur?eny pouze jeho adres?t?m. Jestli?e jste obdr?el(a) tento e-mail omylem, informujte laskav? neprodlen? jeho odes?latele. Obsah tohoto emailu i s p??lohami a jeho kopie vyma?te ze sv?ho syst?mu. Nejste-li zam??len?m adres?tem tohoto emailu, nejste opr?vn?ni tento email jakkoliv u??vat, roz?i?ovat, kop?rovat ?i zve?ej?ovat. Odes?latel e-mailu neodpov?d? za eventu?ln? ?kodu zp?sobenou modifikacemi ?i zpo?d?n?m p?enosu e-mailu. V p??pad?, ?e je tento e-mail sou??st? obchodn?ho jedn?n?: - vyhrazuje si odes?latel pr?vo ukon?it kdykoliv jedn?n? o uzav?en? smlouvy, a to z jak?hokoliv d?vodu i bez uveden? d?vodu. - a obsahuje-li nab?dku, je adres?t opr?vn?n nab?dku bezodkladn? p?ijmout; Odes?latel tohoto e-mailu (nab?dky) vylu?uje p?ijet? nab?dky ze strany p??jemce s dodatkem ?i odchylkou. - trv? odes?latel na tom, ?e p??slu?n? smlouva je uzav?ena teprve v?slovn?m dosa?en?m shody na v?ech jej?ch n?le?itostech. - odes?latel tohoto emailu informuje, ?e nen? opr?vn?n uzav?rat za spole?nost ??dn? smlouvy s v?jimkou p??pad?, kdy k tomu byl p?semn? zmocn?n nebo p?semn? pov??en a takov? pov??en? nebo pln? moc byly adres?tovi tohoto emailu p??padn? osob?, kterou adres?t zastupuje, p?edlo?eny nebo jejich existence je adres?tovi ?i osob? j?m zastoupen? zn?m?. This e-mail and any documents attached to it may be confidential and are intended only for its intended recipients. If you received this e-mail by mistake, please immediately inform its sender. Delete the contents of this e-mail with all attachments and its copies from your system. If you are not the intended recipient of this e-mail, you are not authorized to use, disseminate, copy or disclose this e-mail in any manner. The sender of this e-mail shall not be liable for any possible damage caused by modifications of the e-mail or by delay with transfer of the email. In case that this e-mail forms part of business dealings: - the sender reserves the right to end negotiations about entering into a contract in any time, for any reason, and without stating any reasoning. - if the e-mail contains an offer, the recipient is entitled to immediately accept such offer; The sender of this e-mail (offer) excludes any acceptance of the offer on the part of the recipient containing any amendment or variation. - the sender insists on that the respective contract is concluded only upon an express mutual agreement on all its aspects. - the sender of this e-mail informs that he/she is not authorized to enter into any contracts on behalf of the company except for cases in which he/she is expressly authorized to do so in writing, and such authorization or power of attorney is submitted to the recipient or the person represented by the recipient, or the existence of such authorization is known to the recipient of the person represented by the recipient.