?? Works for me. Perhaps show us the output of sessionInfo(). Mine is:
R version 3.3.3 (2017-03-06) Platform: x86_64-apple-darwin13.4.0 (64-bit) Running under: macOS Sierra 10.12.3 locale: [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8 attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] lattice_0.20-34 backports_1.0.5 loaded via a namespace (and not attached): [1] tools_3.3.3 grid_3.3.3 --Bert Bert Gunter "The trouble with having an open mind is that people keep coming along and sticking things into it." -- Opus (aka Berkeley Breathed in his "Bloom County" comic strip ) On Fri, Apr 21, 2017 at 10:14 AM, BR_email <b...@dmstat1.com> wrote: > David: > Hate to bother you, but because you have seen my code perhaps > you can tell me what I am doing wrong. > I want to replicate my original Response data by 0 times, called > ResponseX10. > All is good until the first calculation, cum_R. > Would you kindly, assist me? > Thanks. > Bruce > **** > Response <- data.frame(Response=rbinom(50,1,0.2), yhat=runif(50)) > Response <- Response[order(Response$yhat,decreasing=TRUE),] > > ResponseX10 <- do.call(rbind, replicate(10, Response, simplify=FALSE)) > > ResponseX10 <- ResponseX10[order(ResponseX10$yhat,decreasing=TRUE),] > > ResponseX10[[2]] <- NULL > ResponseX10 > > cum_R <- cumsum(Response) > cum_R > ******* > > Bruce Ratner, Ph.D. > The Significant Statistician™ > (516) 791-3544 > Statistical Predictive Analtyics -- www.DMSTAT1.com > Machine-Learning Data Mining and Modeling -- www.GenIQ.net > > David L Carlson wrote: >> >> You can rename the columns with colnames() before passing it to xtable. >> This will let you use characters that data.frame would automatically >> convert. >> >> I don't see an easy way to center the columns when printing an html file. >> If you are not making too many of these, you could open the .html file into >> a WYSIWIG html editor such as BlueGriffon, make the changes and save the >> file. If you have Microsoft Excel and Word, another fallback solution is to >> read the .html file into Excel where you have a wide variety of styles. >> >> David C >> >> -----Original Message----- >> From: BR_email [mailto:b...@dmstat1.com] >> Sent: Thursday, April 20, 2017 4:31 PM >> To: David L Carlson <dcarl...@tamu.edu>; r-help@r-project.org >> Subject: Re: [R] Looking for a package to replace xtable >> >> David: >> All is perfect, almost - after I ran your corrections. >> Is there a way I can have more control of the column names, i.e., >> not be restricted to abbreviations headings, and center-justify? >> >> Thanks a lot, nice. >> Bruce >> >> >> David L Carlson wrote: >>> >>> #1 You can remove the rownames by adding the argument >>> include.rownames=FALSE to print.xtable(): >>> >>> print.xtable(DECILE_TABLE, type="html",file="DecileTable.html", >>> include.rownames=FALSE) >>> >>> #2 Prevent data.frame from converting the first column to a factor and >>> use NAs for the columns where you don't want totals: >>> >>> dec_mean_wt_R_nRDL <- cbind(DECILE, dec_mean_wt_R_nRD, Cum_Lift, >>> stringsAsFactors=FALSE) >>> dec_mean_wt_R_nRDL <- dec_mean_wt_R_nRDL[,c(1,3,4,9,8,10)] >>> >>> total_line<-cbind(DECILE="Total", >>> as.data.frame(matrix(c(colSums(dec_mean_wt_R_nRDL[ , 2:3]), rep(NA, >>> 3)),nrow=1))) >>> >>> Now the table should print without totals in the last three columns and >>> no rownames. >>> >>> attach is discouraged since it can lead to confusion when a variable name >>> exists in the environment and in a data frame (or multiple data frames). It >>> is easy to forget which version of the variable you are using. More typing, >>> but less subject to confusion would be to use with(), eg: >>> >>> Cum_RespRate <- with(dec_mean_wt_R_nR, (Cum_R/Cum_n)*100) >>> >>> This way it is always clear where Cum_R and Cum_n are coming from. In >>> your code cum_R = Cum_R and cum_n = Cum_n so you could also use >>> >>> Cum_RespRate <- cum_R/cum_n)*100 >>> >>> ------------------------------------- >>> David L Carlson >>> Department of Anthropology >>> Texas A&M University >>> College Station, TX 77840-4352 >>> >>> -----Original Message----- >>> From: R-help [mailto:r-help-boun...@r-project.org] On Behalf Of BR_email >>> Sent: Thursday, April 20, 2017 12:10 PM >>> To: r-help@r-project.org >>> Subject: [R] Looking for a package to replace xtable >>> >>> R-helper: >>> Below, code for generating a decile table. >>> I am using the xtable package, but it is not quite right for the output. >>> Issue #1. xtable inserts an unwanted column, before the first derived >>> column DECILE >>> Issue #2. In the last line "Total" I manually sum all columns, even >>> though I only want the sums for second and third columns. >>> If I calculate only second and third columns, the remaining columns >>> would have NAs. >>> Either scenario is not desired. >>> >>> Any suggestions, would be appreciated, for a package that addresses >>> issue #1, >>> and has an option for summing the desired two columns. >>> >>> Lastly, I read that one should rarely use "attach()", but if I don't the >>> program will not run. >>> An explanation of why I need attach() would also be appreciated. >>> Thanks. >>> Bruce >>> >>> **** >>> Response <- data.frame(Response=rbinom(50,1,0.2), yhat=runif(50)) >>> Response <- Response[order(Response$yhat,decreasing=TRUE),] >>> >>> Response[[2]] <- NULL >>> >>> cum_R <- cumsum(Response) >>> sam_size <- nrow(Response) >>> >>> cum_n <- seq(1:1,sam_size) >>> wt <- rep(c(1), times=sam_size) >>> cum_wt <- cumsum(wt) >>> >>> dec <- (cum_n/sam_size) >>> decc <- floor((cum_n*10)/(sam_size+1)) >>> >>> dec_mean <- aggregate(Response, by=list(decc), mean) >>> >>> dd_ <- data.frame(cum_R, sam_size, cum_wt, cum_n, decc) >>> dd <- cbind(Response, dd_) >>> names(dd)[2] <- "cum_R" >>> >>> dec_mean <- aggregate(Response ~ decc, dd, mean) >>> >>> wt <- rep(c(1), times=sam_size) >>> cum_wt <- aggregate(wt ~ decc, dd, sum) >>> cum_R <- aggregate(Response ~ decc, dd, sum) >>> >>> dec_mean_wt <- cbind(dec_mean, cum_wt) >>> dec_mean_wt <- dec_mean_wt[-3] >>> >>> dec_mean_wt_R <- cbind(dec_mean_wt, cum_R) >>> dec_mean_wt_R <- dec_mean_wt_R[-4] >>> >>> colnames(dec_mean_wt_R) <- c("Decile", "Resp_Rate", "No_Inds", >>> "No_Resp") >>> >>> dec_mean_wt_R <- dec_mean_wt_R[,c(1,3,4,2)] >>> >>> cum_n <- dec_mean_wt_R[2] >>> cum_n <- cumsum(cum_n) >>> >>> cum_R <- dec_mean_wt_R[3] >>> cum_R <- cumsum(cum_R) >>> >>> dec_mean_wt_R_nR <- cbind(dec_mean_wt_R, cum_n, cum_R) >>> >>> colnames(dec_mean_wt_R_nR) <- >>> c("Decile", "No_Inds", "No_Resp", "RespRate", >>> "Cum_n", "Cum_R") >>> >>> dec_mean_wt_R_nR >>> >>> attach(dec_mean_wt_R_nR) >>> Cum_RespRate <- (Cum_R/Cum_n)*100 >>> >>> options(digits=4) >>> Decile_RespRate <- (No_Resp/No_Inds) >>> >>> dec_mean_wt_R_nRD <- cbind(dec_mean_wt_R_nR, Cum_RespRate, >>> Decile_RespRate) >>> >>> avg_RR <- dec_mean_wt_R_nRD[10,7] >>> Cum_Lift <- (Cum_RespRate/avg_RR)*100 >>> >>> DECILE <- c("top","2","3","4","5","6","7","8","9","bot") >>> dec_mean_wt_R_nRDL <- cbind(DECILE, dec_mean_wt_R_nRD, Cum_Lift) >>> dec_mean_wt_R_nRDL <- dec_mean_wt_R_nRDL[,c(1,3,4,9,8,10)] >>> >>> total_line<-cbind(DECILE="Total", >>> as.data.frame(matrix(colSums(dec_mean_wt_R_nRDL[-1]),nrow=1))) >>> >>> names(total_line)<-names(dec_mean_wt_R_nRDL) >>> dec_mean_wt_R_nRDLT<-rbind(dec_mean_wt_R_nRDL,total_line) >>> decile_table <- dec_mean_wt_R_nRDLT >>> decile_table >>> >>> #Install the xtable package: install.packages("xtable") >>> #Load the xtable package: >>> library(xtable) >>> >>> DECILE_TABLE <-xtable(decile_table) >>> DECILE_TABLE >>> >>> print.xtable(DECILE_TABLE, type="html",file="C:/R_Data/DecileTable.html") >>> >>> **** >>> >>> -- >>> >>> ______________________________________________ >>> 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. >>> >>> >>> >> >> >> > > ______________________________________________ > 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. ______________________________________________ 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.