It is a very long result text. I can send it to you, or is part of it ok?[ Op wo 31 okt. 2018 om 14:27 schreef Richard M. Heiberger <rmh at temple.edu>:> Please send me the > dput(teamq) > > > On Wed, Oct 31, 2018 at 03:51 P. Roberto Bakker <robertobakker at gmail.com> > wrote: > >> Thank you for you information. Package 'HH' is interesting. >> >> Now I find another problem when using 'likert(teamq)' >> I get an error message: >> > likert(teamq) >> Error in dimnames(x) <- `*vtmp*` : >> length of 'dimnames' [2] not equal to array extent >> >> I checked: >> > dim(teamq) >> [1] 4 2 >> > ncol(teamq) >> [1] 2 >> So it should be good. >> >> I used 'make.names' , in case the spaces in the variable names would be a >> problem. >> Same error. >> >> What could I do? >> >> Best and thank you in advance. >> Roberto >> >> >> Op ma 22 okt. 2018 om 20:10 schreef Richard M. Heiberger <rmh at temple.edu >> >: >> >>> Try the likert function in >>> install.packages("HH) ## if necessary >>> library(HH) >>> >>> Then using David Carlson's example teamq >>> likert(teamq) >>> >>> Your example in the 1:30PM (Eastern Daylight Time) doesn't work. >>> Error in revalue(teamq, c(`de situatie in zeer geringe mate van >>> toepassing is\nvoor u of uw supervisorengroep` = "1", : >>> x is not a factor or a character vector. >>> >>> There are many examples in >>> ?likert >>> >>> Rich >>> >>> >>> On Mon, Oct 22, 2018 at 1:30 PM, P. Roberto Bakker >>> <robertobakker at gmail.com> wrote: >>> > Dear David, >>> > >>> > Thank you for you quite response. >>> > My apologies for not giving some sample data - this is due to AVG. >>> > *But this minisample should not be a problem (all in Dutch)*: >>> > teamq >>> > # A tibble: 4 x 2 >>> > `Ik volg bijscholing om mijn opleiders-kwaliteiten op peil te houden` >>> > >>> > <chr> >>> > >>> > 1 de situatie in hoge mate van toepassing is voor u of uw >>> > supervisorengroep >>> > 2 de situatie in zeer hoge mate van toepassing is voor u of uw >>> > supervisorengroep >>> > 3 de situatie in zeer hoge mate van toepassing is voor u of uw >>> > supervisorengroep >>> > 4 de situatie in geringe mate van toepassing is voor u of uw >>> > supervisorengroep >>> > `Ik weet precies wat de ?modernisering van de opleiding? inhoudt` >>> > >>> > <chr> >>> > >>> > 1 de situatie in hoge mate van toepassing is voor u of uw >>> > supervisorengroep >>> > 2 de situatie in zeer hoge mate van toepassing is voor u of uw >>> > supervisorengroep >>> > 3 de situatie in zeer hoge mate van toepassing is voor u of uw >>> > supervisorengroep >>> > 4 de situatie in geringe mate van toepassing is voor u of uw >>> > supervisorengroep >>> > >>> > As you see the likert items are in words, and I should change them in >>> > nummeric - Am I correct? >>> > >>> > *To do this, I tried (see further below):* >>> > plyr rename() ; I receive the message it should be a factor or >>> character >>> > dplyr recode() ; same message >>> > mapvalues() ; it should be atomic, so I used as.atomic(teamq) but then >>> I >>> > receive the nummers a strings. >>> > >>> > *The syntaxes* >>> > require(plyr) >>> > example2 <- revalue(teamq, >>> > c("de situatie in zeer geringe mate van toepassing >>> is >>> > voor u of uw supervisorengroep"= "1", >>> > "de situatie in geringe mate van toepassing is >>> voor >>> > u of uw supervisorengroep"= "2", >>> > "de situatie enigszins van toepassing is voor >>> u of >>> > uw supervisorengroep"= "3", >>> > "de situatie in hoge mate van toepassing is >>> voor u >>> > of uw supervisorengroep"= "4", >>> > "de situatie in zeer hoge mate van toepassing >>> is >>> > voor u of uw supervisorengroep"= "5")) >>> > >>> > require(dplyr) >>> > example2 <- recode(teamq, >>> > c("de situatie in zeer geringe mate van toepassing >>> is >>> > voor u of uw supervisorengroep"= "1", >>> > "de situatie in geringe mate van toepassing is >>> voor u >>> > of uw supervisorengroep"= "2", >>> > "de situatie enigszins van toepassing is voor u >>> of uw >>> > supervisorengroep"= "3", >>> > "de situatie in hoge mate van toepassing is voor >>> u of >>> > uw supervisorengroep"= "4", >>> > "de situatie in zeer hoge mate van toepassing is >>> voor >>> > u of uw supervisorengroep"= "5")) >>> > >>> > mapvalues(as.matrix(teamq), from = c("de situatie in zeer geringe mate >>> van >>> > toepassing is voor u of uw supervisorengroep", >>> > "de situatie in geringe mate van toepassing is >>> voor >>> > u of uw supervisorengroep", >>> > "de situatie enigszins van toepassing is voor >>> u of >>> > uw supervisorengroep", >>> > "de situatie in hoge mate van toepassing is >>> voor u >>> > of uw supervisorengroep", >>> > "de situatie in zeer hoge mate van toepassing >>> is >>> > voor u of uw supervisorengroep"), >>> > to = c(1,2,3,4,5)) >>> > >>> > What should I do? >>> > Thank you in advance, Roberto >>> > >>> > Op ma 22 okt. 2018 om 17:13 schreef David L Carlson <dcarlson at tamu.edu >>> >: >>> > >>> >> Your example is not reproducible since you did not give us some sample >>> >> data. I suspect that your data frame consists of columns that >>> represent >>> >> questions and rows that represent individuals who answered the >>> questions. >>> >> First create a simple example: >>> >> >>> >> set.seed(42) >>> >> teamq <- data.frame(V1=sample(c(1, 2, 4, 5), 25, replace = TRUE), >>> >> V2=sample(c(1, 2, 3, 4, 5), 25, replace=TRUE), >>> >> V3=sample(c(2, 3, 4, 5), 25, replace=TRUE)) >>> >> >>> >> Notice that this data frame ONLY contains questions (and only 3 >>> >> questions). Here are 2 ways to get what you want. The first one >>> stacks the >>> >> data: >>> >> >>> >> teamq.stack <- stack(teamq) >>> >> str(teamq.stack) >>> >> counts <- table(teamq.stack) >>> >> str(counts) >>> >> >>> >> The second one converts each column to a factor with levels 1 - 5: >>> >> >>> >> teamq2 <- data.frame(lapply(teamq, factor, levels=1:5)) >>> >> str(teamq2) >>> >> counts <- sapply(teamq2, table) >>> >> str(counts) >>> >> >>> >> Now make the plots: >>> >> >>> >> cols <- c("yellow","sandybrown","orange", "darkolivegreen","green") >>> >> barplot(counts[, 1], horiz=TRUE, col=cols, legend=TRUE) >>> >> barplot(counts[, 2], horiz=TRUE, col=cols, legend=TRUE) >>> >> barplot(counts[, 3], horiz=TRUE, col=cols, legend=TRUE) >>> >> >>> >> You will need to adjust the xlim= argument so that the legend does not >>> >> print on top of the bars. >>> >> >>> >> ---------------------------------------- >>> >> 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 P. Roberto >>> Bakker >>> >> Sent: Monday, October 22, 2018 9:04 AM >>> >> To: R mailing list <r-help at r-project.org> >>> >> Subject: [R] Different stack barplots - same color legends >>> >> >>> >> Hi, >>> >> >>> >> I want to make barplots from different questions (columns) in one >>> >> data.frame. >>> >> Each question has the same 5 likert items. >>> >> Now the problem: in some questions all items are answered; in other >>> less. >>> >> From the syntax below I get nice stack barplots - *but the legend >>> colors do >>> >> not* refer to the same likert-item, which I understand - the colors >>> go in >>> >> sequence along the table. >>> >> Question: how can I write a syntax that each likert-item has the same >>> >> legend color? >>> >> Thank you in advance, >>> >> >>> >> Roberto >>> >> >>> >> SYNTAX: >>> >> counts19 <- table(teamq[,19]) >>> >> counts20 <- table(teamq[,20]) >>> >> barplot(as.matrix(counts19), horiz = T, >>> >> col=c("yellow","sandybrown","orange", >>> "darkolivegreen","green"), >>> >> legend=T) >>> >> barplot(as.matrix(counts20), horiz = T, >>> >> col=c("yellow","sandybrown","orange", >>> "darkolivegreen","green"), >>> >> legend=T) >>> >> >>> >> [[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]] >>> > >>> > ______________________________________________ >>> > 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]]
Richard M. Heiberger
2018-Oct-31 15:24 UTC
[R] Different stack barplots - same color legends
part is fine. just be sure that the small part causes the problem. I will need that to investigate what is happening. On Wed, Oct 31, 2018 at 11:15 AM, P. Roberto Bakker <robertobakker at gmail.com> wrote:> It is a very long result text. I can send it to you, or is part of it ok?[ > > Op wo 31 okt. 2018 om 14:27 schreef Richard M. Heiberger <rmh at temple.edu>: >> >> Please send me the >> dput(teamq) >> >> >> On Wed, Oct 31, 2018 at 03:51 P. Roberto Bakker <robertobakker at gmail.com> >> wrote: >>> >>> Thank you for you information. Package 'HH' is interesting. >>> >>> Now I find another problem when using 'likert(teamq)' >>> I get an error message: >>> > likert(teamq) >>> Error in dimnames(x) <- `*vtmp*` : >>> length of 'dimnames' [2] not equal to array extent >>> >>> I checked: >>> > dim(teamq) >>> [1] 4 2 >>> > ncol(teamq) >>> [1] 2 >>> So it should be good. >>> >>> I used 'make.names' , in case the spaces in the variable names would be a >>> problem. >>> Same error. >>> >>> What could I do? >>> >>> Best and thank you in advance. >>> Roberto >>> >>> >>> Op ma 22 okt. 2018 om 20:10 schreef Richard M. Heiberger >>> <rmh at temple.edu>: >>>> >>>> Try the likert function in >>>> install.packages("HH) ## if necessary >>>> library(HH) >>>> >>>> Then using David Carlson's example teamq >>>> likert(teamq) >>>> >>>> Your example in the 1:30PM (Eastern Daylight Time) doesn't work. >>>> Error in revalue(teamq, c(`de situatie in zeer geringe mate van >>>> toepassing is\nvoor u of uw supervisorengroep` = "1", : >>>> x is not a factor or a character vector. >>>> >>>> There are many examples in >>>> ?likert >>>> >>>> Rich >>>> >>>> >>>> On Mon, Oct 22, 2018 at 1:30 PM, P. Roberto Bakker >>>> <robertobakker at gmail.com> wrote: >>>> > Dear David, >>>> > >>>> > Thank you for you quite response. >>>> > My apologies for not giving some sample data - this is due to AVG. >>>> > *But this minisample should not be a problem (all in Dutch)*: >>>> > teamq >>>> > # A tibble: 4 x 2 >>>> > `Ik volg bijscholing om mijn opleiders-kwaliteiten op peil te >>>> > houden` >>>> > >>>> > <chr> >>>> > >>>> > 1 de situatie in hoge mate van toepassing is voor u of uw >>>> > supervisorengroep >>>> > 2 de situatie in zeer hoge mate van toepassing is voor u of uw >>>> > supervisorengroep >>>> > 3 de situatie in zeer hoge mate van toepassing is voor u of uw >>>> > supervisorengroep >>>> > 4 de situatie in geringe mate van toepassing is voor u of uw >>>> > supervisorengroep >>>> > `Ik weet precies wat de ?modernisering van de opleiding? inhoudt` >>>> > >>>> > <chr> >>>> > >>>> > 1 de situatie in hoge mate van toepassing is voor u of uw >>>> > supervisorengroep >>>> > 2 de situatie in zeer hoge mate van toepassing is voor u of uw >>>> > supervisorengroep >>>> > 3 de situatie in zeer hoge mate van toepassing is voor u of uw >>>> > supervisorengroep >>>> > 4 de situatie in geringe mate van toepassing is voor u of uw >>>> > supervisorengroep >>>> > >>>> > As you see the likert items are in words, and I should change them in >>>> > nummeric - Am I correct? >>>> > >>>> > *To do this, I tried (see further below):* >>>> > plyr rename() ; I receive the message it should be a factor or >>>> > character >>>> > dplyr recode() ; same message >>>> > mapvalues() ; it should be atomic, so I used as.atomic(teamq) but then >>>> > I >>>> > receive the nummers a strings. >>>> > >>>> > *The syntaxes* >>>> > require(plyr) >>>> > example2 <- revalue(teamq, >>>> > c("de situatie in zeer geringe mate van toepassing >>>> > is >>>> > voor u of uw supervisorengroep"= "1", >>>> > "de situatie in geringe mate van toepassing is >>>> > voor >>>> > u of uw supervisorengroep"= "2", >>>> > "de situatie enigszins van toepassing is voor >>>> > u of >>>> > uw supervisorengroep"= "3", >>>> > "de situatie in hoge mate van toepassing is >>>> > voor u >>>> > of uw supervisorengroep"= "4", >>>> > "de situatie in zeer hoge mate van toepassing >>>> > is >>>> > voor u of uw supervisorengroep"= "5")) >>>> > >>>> > require(dplyr) >>>> > example2 <- recode(teamq, >>>> > c("de situatie in zeer geringe mate van toepassing >>>> > is >>>> > voor u of uw supervisorengroep"= "1", >>>> > "de situatie in geringe mate van toepassing is >>>> > voor u >>>> > of uw supervisorengroep"= "2", >>>> > "de situatie enigszins van toepassing is voor u >>>> > of uw >>>> > supervisorengroep"= "3", >>>> > "de situatie in hoge mate van toepassing is voor >>>> > u of >>>> > uw supervisorengroep"= "4", >>>> > "de situatie in zeer hoge mate van toepassing is >>>> > voor >>>> > u of uw supervisorengroep"= "5")) >>>> > >>>> > mapvalues(as.matrix(teamq), from = c("de situatie in zeer geringe mate >>>> > van >>>> > toepassing is voor u of uw supervisorengroep", >>>> > "de situatie in geringe mate van toepassing is >>>> > voor >>>> > u of uw supervisorengroep", >>>> > "de situatie enigszins van toepassing is voor >>>> > u of >>>> > uw supervisorengroep", >>>> > "de situatie in hoge mate van toepassing is >>>> > voor u >>>> > of uw supervisorengroep", >>>> > "de situatie in zeer hoge mate van toepassing >>>> > is >>>> > voor u of uw supervisorengroep"), >>>> > to = c(1,2,3,4,5)) >>>> > >>>> > What should I do? >>>> > Thank you in advance, Roberto >>>> > >>>> > Op ma 22 okt. 2018 om 17:13 schreef David L Carlson >>>> > <dcarlson at tamu.edu>: >>>> > >>>> >> Your example is not reproducible since you did not give us some >>>> >> sample >>>> >> data. I suspect that your data frame consists of columns that >>>> >> represent >>>> >> questions and rows that represent individuals who answered the >>>> >> questions. >>>> >> First create a simple example: >>>> >> >>>> >> set.seed(42) >>>> >> teamq <- data.frame(V1=sample(c(1, 2, 4, 5), 25, replace = TRUE), >>>> >> V2=sample(c(1, 2, 3, 4, 5), 25, replace=TRUE), >>>> >> V3=sample(c(2, 3, 4, 5), 25, replace=TRUE)) >>>> >> >>>> >> Notice that this data frame ONLY contains questions (and only 3 >>>> >> questions). Here are 2 ways to get what you want. The first one >>>> >> stacks the >>>> >> data: >>>> >> >>>> >> teamq.stack <- stack(teamq) >>>> >> str(teamq.stack) >>>> >> counts <- table(teamq.stack) >>>> >> str(counts) >>>> >> >>>> >> The second one converts each column to a factor with levels 1 - 5: >>>> >> >>>> >> teamq2 <- data.frame(lapply(teamq, factor, levels=1:5)) >>>> >> str(teamq2) >>>> >> counts <- sapply(teamq2, table) >>>> >> str(counts) >>>> >> >>>> >> Now make the plots: >>>> >> >>>> >> cols <- c("yellow","sandybrown","orange", "darkolivegreen","green") >>>> >> barplot(counts[, 1], horiz=TRUE, col=cols, legend=TRUE) >>>> >> barplot(counts[, 2], horiz=TRUE, col=cols, legend=TRUE) >>>> >> barplot(counts[, 3], horiz=TRUE, col=cols, legend=TRUE) >>>> >> >>>> >> You will need to adjust the xlim= argument so that the legend does >>>> >> not >>>> >> print on top of the bars. >>>> >> >>>> >> ---------------------------------------- >>>> >> 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 P. Roberto >>>> >> Bakker >>>> >> Sent: Monday, October 22, 2018 9:04 AM >>>> >> To: R mailing list <r-help at r-project.org> >>>> >> Subject: [R] Different stack barplots - same color legends >>>> >> >>>> >> Hi, >>>> >> >>>> >> I want to make barplots from different questions (columns) in one >>>> >> data.frame. >>>> >> Each question has the same 5 likert items. >>>> >> Now the problem: in some questions all items are answered; in other >>>> >> less. >>>> >> From the syntax below I get nice stack barplots - *but the legend >>>> >> colors do >>>> >> not* refer to the same likert-item, which I understand - the colors >>>> >> go in >>>> >> sequence along the table. >>>> >> Question: how can I write a syntax that each likert-item has the same >>>> >> legend color? >>>> >> Thank you in advance, >>>> >> >>>> >> Roberto >>>> >> >>>> >> SYNTAX: >>>> >> counts19 <- table(teamq[,19]) >>>> >> counts20 <- table(teamq[,20]) >>>> >> barplot(as.matrix(counts19), horiz = T, >>>> >> col=c("yellow","sandybrown","orange", >>>> >> "darkolivegreen","green"), >>>> >> legend=T) >>>> >> barplot(as.matrix(counts20), horiz = T, >>>> >> col=c("yellow","sandybrown","orange", >>>> >> "darkolivegreen","green"), >>>> >> legend=T) >>>> >> >>>> >> [[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]] >>>> > >>>> > ______________________________________________ >>>> > 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.
This is part of the output text
"de situatie in hoge mate van toepassing is voor u of uw
supervisorengroep",
"de situatie in hoge mate van toepassing is voor u of uw
supervisorengroep",
"de situatie enigszins van toepassing is voor u of uw
supervisorengroep",
"de situatie in hoge mate van toepassing is voor u of uw
supervisorengroep"
), `Ik waardeer de inbreng van de aios in de afdelingsvergadering` = c("de
situatie in hoge mate van toepassing is voor u of uw supervisorengroep",
"de situatie in hoge mate van toepassing is voor u of uw
supervisorengroep",
"de situatie in zeer hoge mate van toepassing is voor u of uw
supervisorengroep",
"de situatie in zeer hoge mate van toepassing is voor u of uw
supervisorengroep",
"de situatie enigszins van toepassing is voor u of uw
supervisorengroep",
"de situatie in zeer hoge mate van toepassing is voor u of uw
supervisorengroep",
"de situatie in zeer hoge mate van toepassing is voor u of uw
supervisorengroep",
"de situatie in zeer hoge mate van toepassing is voor u of uw
supervisorengroep",
"de situatie enigszins van toepassing is voor u of uw
supervisorengroep",
"de situatie in hoge mate van toepassing is voor u of uw
supervisorengroep",
"de situatie in hoge mate van toepassing is voor u of uw
supervisorengroep",
"de situatie in hoge mate van toepassing is voor u of uw
supervisorengroep",
Op wo 31 okt. 2018 om 16:24 schreef Richard M. Heiberger <rmh at
temple.edu>:
> part is fine. just be sure that the small part causes the problem.
> I will need that to investigate what is happening.
>
>
> On Wed, Oct 31, 2018 at 11:15 AM, P. Roberto Bakker
> <robertobakker at gmail.com> wrote:
> > It is a very long result text. I can send it to you, or is part of it
> ok?[
> >
> > Op wo 31 okt. 2018 om 14:27 schreef Richard M. Heiberger <rmh at
temple.edu
> >:
> >>
> >> Please send me the
> >> dput(teamq)
> >>
> >>
> >> On Wed, Oct 31, 2018 at 03:51 P. Roberto Bakker <
> robertobakker at gmail.com>
> >> wrote:
> >>>
> >>> Thank you for you information. Package 'HH' is
interesting.
> >>>
> >>> Now I find another problem when using 'likert(teamq)'
> >>> I get an error message:
> >>> > likert(teamq)
> >>> Error in dimnames(x) <- `*vtmp*` :
> >>> length of 'dimnames' [2] not equal to array extent
> >>>
> >>> I checked:
> >>> > dim(teamq)
> >>> [1] 4 2
> >>> > ncol(teamq)
> >>> [1] 2
> >>> So it should be good.
> >>>
> >>> I used 'make.names' , in case the spaces in the
variable names would
> be a
> >>> problem.
> >>> Same error.
> >>>
> >>> What could I do?
> >>>
> >>> Best and thank you in advance.
> >>> Roberto
> >>>
> >>>
> >>> Op ma 22 okt. 2018 om 20:10 schreef Richard M. Heiberger
> >>> <rmh at temple.edu>:
> >>>>
> >>>> Try the likert function in
> >>>> install.packages("HH) ## if necessary
> >>>> library(HH)
> >>>>
> >>>> Then using David Carlson's example teamq
> >>>> likert(teamq)
> >>>>
> >>>> Your example in the 1:30PM (Eastern Daylight Time)
doesn't work.
> >>>> Error in revalue(teamq, c(`de situatie in zeer geringe
mate van
> >>>> toepassing is\nvoor u of uw supervisorengroep` =
"1", :
> >>>> x is not a factor or a character vector.
> >>>>
> >>>> There are many examples in
> >>>> ?likert
> >>>>
> >>>> Rich
> >>>>
> >>>>
> >>>> On Mon, Oct 22, 2018 at 1:30 PM, P. Roberto Bakker
> >>>> <robertobakker at gmail.com> wrote:
> >>>> > Dear David,
> >>>> >
> >>>> > Thank you for you quite response.
> >>>> > My apologies for not giving some sample data - this
is due to AVG.
> >>>> > *But this minisample should not be a problem (all in
Dutch)*:
> >>>> > teamq
> >>>> > # A tibble: 4 x 2
> >>>> > `Ik volg bijscholing om mijn opleiders-kwaliteiten
op peil te
> >>>> > houden`
> >>>> >
> >>>> > <chr>
> >>>> >
> >>>> > 1 de situatie in hoge mate van toepassing is voor u
of uw
> >>>> > supervisorengroep
> >>>> > 2 de situatie in zeer hoge mate van toepassing is
voor u of uw
> >>>> > supervisorengroep
> >>>> > 3 de situatie in zeer hoge mate van toepassing is
voor u of uw
> >>>> > supervisorengroep
> >>>> > 4 de situatie in geringe mate van toepassing is voor
u of uw
> >>>> > supervisorengroep
> >>>> > `Ik weet precies wat de ?modernisering van de
opleiding? inhoudt`
> >>>> >
> >>>> > <chr>
> >>>> >
> >>>> > 1 de situatie in hoge mate van toepassing is voor u
of uw
> >>>> > supervisorengroep
> >>>> > 2 de situatie in zeer hoge mate van toepassing is
voor u of uw
> >>>> > supervisorengroep
> >>>> > 3 de situatie in zeer hoge mate van toepassing is
voor u of uw
> >>>> > supervisorengroep
> >>>> > 4 de situatie in geringe mate van toepassing is voor
u of uw
> >>>> > supervisorengroep
> >>>> >
> >>>> > As you see the likert items are in words, and I
should change them
> in
> >>>> > nummeric - Am I correct?
> >>>> >
> >>>> > *To do this, I tried (see further below):*
> >>>> > plyr rename() ; I receive the message it should be a
factor or
> >>>> > character
> >>>> > dplyr recode() ; same message
> >>>> > mapvalues() ; it should be atomic, so I used
as.atomic(teamq) but
> then
> >>>> > I
> >>>> > receive the nummers a strings.
> >>>> >
> >>>> > *The syntaxes*
> >>>> > require(plyr)
> >>>> > example2 <- revalue(teamq,
> >>>> > c("de situatie in zeer
geringe mate van
> toepassing
> >>>> > is
> >>>> > voor u of uw supervisorengroep"= "1",
> >>>> > "de situatie in geringe
mate van toepassing
> is
> >>>> > voor
> >>>> > u of uw supervisorengroep"= "2",
> >>>> > "de situatie enigszins
van toepassing is
> voor
> >>>> > u of
> >>>> > uw supervisorengroep"= "3",
> >>>> > "de situatie in hoge
mate van toepassing is
> >>>> > voor u
> >>>> > of uw supervisorengroep"= "4",
> >>>> > "de situatie in zeer
hoge mate van
> toepassing
> >>>> > is
> >>>> > voor u of uw supervisorengroep"= "5"))
> >>>> >
> >>>> > require(dplyr)
> >>>> > example2 <- recode(teamq,
> >>>> > c("de situatie in zeer
geringe mate van
> toepassing
> >>>> > is
> >>>> > voor u of uw supervisorengroep"= "1",
> >>>> > "de situatie in geringe
mate van toepassing is
> >>>> > voor u
> >>>> > of uw supervisorengroep"= "2",
> >>>> > "de situatie enigszins van
toepassing is voor
> u
> >>>> > of uw
> >>>> > supervisorengroep"= "3",
> >>>> > "de situatie in hoge mate
van toepassing is
> voor
> >>>> > u of
> >>>> > uw supervisorengroep"= "4",
> >>>> > "de situatie in zeer hoge
mate van toepassing
> is
> >>>> > voor
> >>>> > u of uw supervisorengroep"= "5"))
> >>>> >
> >>>> > mapvalues(as.matrix(teamq), from = c("de
situatie in zeer geringe
> mate
> >>>> > van
> >>>> > toepassing is voor u of uw supervisorengroep",
> >>>> > "de situatie in geringe
mate van toepassing
> is
> >>>> > voor
> >>>> > u of uw supervisorengroep",
> >>>> > "de situatie enigszins
van toepassing is
> voor
> >>>> > u of
> >>>> > uw supervisorengroep",
> >>>> > "de situatie in hoge
mate van toepassing is
> >>>> > voor u
> >>>> > of uw supervisorengroep",
> >>>> > "de situatie in zeer
hoge mate van
> toepassing
> >>>> > is
> >>>> > voor u of uw supervisorengroep"),
> >>>> > to = c(1,2,3,4,5))
> >>>> >
> >>>> > What should I do?
> >>>> > Thank you in advance, Roberto
> >>>> >
> >>>> > Op ma 22 okt. 2018 om 17:13 schreef David L Carlson
> >>>> > <dcarlson at tamu.edu>:
> >>>> >
> >>>> >> Your example is not reproducible since you did
not give us some
> >>>> >> sample
> >>>> >> data. I suspect that your data frame consists of
columns that
> >>>> >> represent
> >>>> >> questions and rows that represent individuals who
answered the
> >>>> >> questions.
> >>>> >> First create a simple example:
> >>>> >>
> >>>> >> set.seed(42)
> >>>> >> teamq <- data.frame(V1=sample(c(1, 2, 4, 5),
25, replace = TRUE),
> >>>> >> V2=sample(c(1, 2, 3, 4, 5), 25,
replace=TRUE),
> >>>> >> V3=sample(c(2, 3, 4, 5), 25, replace=TRUE))
> >>>> >>
> >>>> >> Notice that this data frame ONLY contains
questions (and only 3
> >>>> >> questions). Here are 2 ways to get what you want.
The first one
> >>>> >> stacks the
> >>>> >> data:
> >>>> >>
> >>>> >> teamq.stack <- stack(teamq)
> >>>> >> str(teamq.stack)
> >>>> >> counts <- table(teamq.stack)
> >>>> >> str(counts)
> >>>> >>
> >>>> >> The second one converts each column to a factor
with levels 1 - 5:
> >>>> >>
> >>>> >> teamq2 <- data.frame(lapply(teamq, factor,
levels=1:5))
> >>>> >> str(teamq2)
> >>>> >> counts <- sapply(teamq2, table)
> >>>> >> str(counts)
> >>>> >>
> >>>> >> Now make the plots:
> >>>> >>
> >>>> >> cols <-
c("yellow","sandybrown","orange",
"darkolivegreen","green")
> >>>> >> barplot(counts[, 1], horiz=TRUE, col=cols,
legend=TRUE)
> >>>> >> barplot(counts[, 2], horiz=TRUE, col=cols,
legend=TRUE)
> >>>> >> barplot(counts[, 3], horiz=TRUE, col=cols,
legend=TRUE)
> >>>> >>
> >>>> >> You will need to adjust the xlim= argument so
that the legend does
> >>>> >> not
> >>>> >> print on top of the bars.
> >>>> >>
> >>>> >> ----------------------------------------
> >>>> >> 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 P.
> Roberto
> >>>> >> Bakker
> >>>> >> Sent: Monday, October 22, 2018 9:04 AM
> >>>> >> To: R mailing list <r-help at
r-project.org>
> >>>> >> Subject: [R] Different stack barplots - same
color legends
> >>>> >>
> >>>> >> Hi,
> >>>> >>
> >>>> >> I want to make barplots from different questions
(columns) in one
> >>>> >> data.frame.
> >>>> >> Each question has the same 5 likert items.
> >>>> >> Now the problem: in some questions all items are
answered; in other
> >>>> >> less.
> >>>> >> From the syntax below I get nice stack barplots -
*but the legend
> >>>> >> colors do
> >>>> >> not* refer to the same likert-item, which I
understand - the colors
> >>>> >> go in
> >>>> >> sequence along the table.
> >>>> >> Question: how can I write a syntax that each
likert-item has the
> same
> >>>> >> legend color?
> >>>> >> Thank you in advance,
> >>>> >>
> >>>> >> Roberto
> >>>> >>
> >>>> >> SYNTAX:
> >>>> >> counts19 <- table(teamq[,19])
> >>>> >> counts20 <- table(teamq[,20])
> >>>> >> barplot(as.matrix(counts19), horiz = T,
> >>>> >>
col=c("yellow","sandybrown","orange",
> >>>> >> "darkolivegreen","green"),
> >>>> >> legend=T)
> >>>> >> barplot(as.matrix(counts20), horiz = T,
> >>>> >>
col=c("yellow","sandybrown","orange",
> >>>> >> "darkolivegreen","green"),
> >>>> >> legend=T)
> >>>> >>
> >>>> >> [[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]]
> >>>> >
> >>>> > ______________________________________________
> >>>> > 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]]