Hi Jim, Thank you for your quick reply. It is a great procedure. The response options in my data.frame are (fortunately) similar in all columns. It would be nice if I could use your procedure in all columns at once instead of each column. My data.frame contains 48 columns, each with long column names. This means that I need to put each (long) column name after "$: dataname$"very long name". So, is ther a way to do this procedure for all columns?
Roberto Op do 1 nov. 2018 om 10:50 schreef Jim Lemon <drjimle...@gmail.com>: > Hi Roberto, > What I suggested is a brute force method of translating response > options into ordinal numbers. Fortunately for me, the Barratt > Impulsivity Scale has relatively short and constant response options. > As I programmed the test myself, I already had the questions in plain > text, so I simply added the "as.numeric(factor(" and "levels=..." > commands to the forward and reversed response options to create the > whole transformation code. With a bit of cut-and-paste work, it didn't > take that long. Because the BIS-11 is used quite a bit where I am > working. it was worth the trouble. > > Jim > > On Thu, Nov 1, 2018 at 8:38 PM P. Roberto Bakker > <robertobak...@gmail.com> wrote: > > > > Hi Jim, > > > > Thank you. > > An additional question: as I have many columns to change in numeric, and > the columns are long sentences, what is an efficient way to do this? > > I checked in StackOverflow but could not find the right answer > > Best Roberto > > > > > > Op do 1 nov. 2018 om 00:25 schreef Jim Lemon <drjimle...@gmail.com>: > >> > >> Hi Roberto, > >> Here is a snippet of code that translates the text responses of the > >> BIS-11 into numeric values. Note the reversal of the order in the > >> second item: > >> > >> BIS$Q1<-as.numeric(factor(BIS$Q1, > >> levels=c("Almost","Often","Occasionally","Rarely/Never"))) > >> BIS$Q2<-as.numeric(factor(BIS$Q2, > >> levels=c("Rarely/Never","Occasionally","Often","Almost"))) > >> ... > >> > >> Jim > >> On Thu, Nov 1, 2018 at 8:57 AM P. Roberto Bakker > >> <robertobak...@gmail.com> wrote: > >> > > >> > Hi Rich, > >> > > >> > Thank you for your answer. > >> > The sentences are strings (likert scale: 'the situation is highly > >> > applicable to me' etc - in Dutch), or column labels; it may be > confusing as > >> > it is in Dutch. Below I show you part of the dataframe with my > annotation > >> > added (string/column lable) to give you an idea. > >> > I need to change the likert strings into numeric (1:5). And this is a > >> > challenge somehow. > >> > With dplyr, plyr it did not work. > >> > After I have the numeric version then I can stack them as suggested by > >> > David. > >> > > [[alternative HTML version deleted]] ______________________________________________ R-help@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.