Please send me the dput(teamq)
On Wed, Oct 31, 2018 at 03:51 P. Roberto Bakker <robertobak...@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 <r...@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 >> <robertobak...@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 <dcarl...@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-boun...@r-project.org> On Behalf Of P. Roberto >> Bakker >> >> Sent: Monday, October 22, 2018 9:04 AM >> >> To: R mailing list <r-help@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@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@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@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.