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 <drjimlemon at 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 > <robertobakker at 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]]
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
<robertobakker at 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 <drjimlemon at
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
>> <robertobakker at 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.
>> >
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 <drjimlemon at 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 > <robertobakker at 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 <drjimlemon at 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 > >> <robertobakker at 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]]