diff -Nru r-cran-gss-2.2-0/ChangeLog r-cran-gss-2.2-2/ChangeLog --- r-cran-gss-2.2-0/ChangeLog 2020-05-03 18:34:45.000000000 +0000 +++ r-cran-gss-2.2-2/ChangeLog 2020-05-26 04:21:51.000000000 +0000 @@ -1,3 +1,17 @@ +Tue May 26 00:21:21 EDT 2020, Chong Gu + + * DESCRIPTION: Version 2.2-2. + + * R: Added sscomp and sscomp2. + + * man: Added documentation for sscomp and sscomp2. + +Sat May 16 15:49:33 EDT 2020, Chong Gu + + * DESCRIPTION: Version 2.2-1. + + * R: Bug fixes, code cleanings in numerous places. + Sun May 3 14:34:28 EDT 2020, Chong Gu * DESCRIPTION: Version 2.2-0. diff -Nru r-cran-gss-2.2-0/debian/changelog r-cran-gss-2.2-2/debian/changelog --- r-cran-gss-2.2-0/debian/changelog 2020-05-05 01:36:33.000000000 +0000 +++ r-cran-gss-2.2-2/debian/changelog 2020-06-01 20:13:45.000000000 +0000 @@ -1,3 +1,17 @@ +r-cran-gss (2.2-2-1) unstable; urgency=medium + + * New upstream release + + -- Dirk Eddelbuettel Mon, 01 Jun 2020 15:13:45 -0500 + +r-cran-gss (2.2-1-1) unstable; urgency=medium + + * New upstream release + + * debian/control: Set Build-Depends: to current R version + + -- Dirk Eddelbuettel Thu, 21 May 2020 12:17:20 -0500 + r-cran-gss (2.2-0-1) unstable; urgency=medium * New upstream release diff -Nru r-cran-gss-2.2-0/debian/control r-cran-gss-2.2-2/debian/control --- r-cran-gss-2.2-0/debian/control 2020-03-05 19:45:13.000000000 +0000 +++ r-cran-gss-2.2-2/debian/control 2020-05-21 17:17:01.000000000 +0000 @@ -2,7 +2,7 @@ Section: gnu-r Priority: optional Maintainer: Dirk Eddelbuettel -Build-Depends: debhelper (>= 7.0.0), r-base-dev (>= 3.6.3), dh-r +Build-Depends: debhelper (>= 7.0.0), r-base-dev (>= 4.0.0), dh-r Standards-Version: 4.5.0 Vcs-Browser: https://salsa.debian.org/edd/r-cran-gss Vcs-Git: https://salsa.debian.org/edd/r-cran-gss.git diff -Nru r-cran-gss-2.2-0/DESCRIPTION r-cran-gss-2.2-2/DESCRIPTION --- r-cran-gss-2.2-0/DESCRIPTION 2020-05-04 05:20:23.000000000 +0000 +++ r-cran-gss-2.2-2/DESCRIPTION 2020-05-26 05:20:03.000000000 +0000 @@ -1,6 +1,6 @@ Package: gss -Version: 2.2-0 -Date: 2020-05-03 +Version: 2.2-2 +Date: 2020-05-26 Title: General Smoothing Splines Author: Chong Gu Maintainer: Chong Gu @@ -8,7 +8,7 @@ Description: A comprehensive package for structural multivariate function estimation using smoothing splines. License: GPL (>= 2) -Packaged: 2020-05-03 22:48:29 UTC; chong +Packaged: 2020-05-26 04:26:48 UTC; chong NeedsCompilation: yes Repository: CRAN -Date/Publication: 2020-05-04 05:20:23 UTC +Date/Publication: 2020-05-26 05:20:03 UTC diff -Nru r-cran-gss-2.2-0/INDEX r-cran-gss-2.2-2/INDEX --- r-cran-gss-2.2-0/INDEX 2020-04-30 16:56:11.000000000 +0000 +++ r-cran-gss-2.2-2/INDEX 2020-05-26 03:45:28.000000000 +0000 @@ -42,6 +42,8 @@ cpssden Evaluating 1-D conditional cdf of ssden estimates cqssden Evaluating 1-D conditional quantiles of ssden estimates print.ssden Print function for ssden objects +sscomp Estimating composition with one sample +sscomp2 Estimating composition with multiple samples sscden Estimating conditional density using smoothing splines d.sscden Evaluating pdf of sscden estimates diff -Nru r-cran-gss-2.2-0/man/sscomp.Rd r-cran-gss-2.2-2/man/sscomp.Rd --- r-cran-gss-2.2-0/man/sscomp.Rd 1970-01-01 00:00:00.000000000 +0000 +++ r-cran-gss-2.2-2/man/sscomp.Rd 2020-05-26 04:26:40.000000000 +0000 @@ -0,0 +1,33 @@ +\name{sscomp} +\alias{sscomp} +\alias{sscomp2} +\title{Composition Estimation} +\description{ + Estimate composition using multinomial counts. +} +\usage{ +sscomp(x,wt=rep(1,length(x)),alpha=1.4) + +sscomp2(x,alpha=1.4) +} +\arguments{ + \item{x}{Numerical vector or matrix of multinomial counts.} + \item{wt}{Numerical vector of integration weights.} + \item{alpha}{Parameter defining cross-validation score for smoothing + parameter selection.} +} +\details{ + \code{sscomp} takes a vector \code{x} to estimate composition using + density estimation on a nominal discrete domain; zero counts must be + included in \code{x} to specify the domain. \code{wt} mimicking the + shape of the unknown density could improve performance. + + \code{sscomp2} takes a matrix \code{x}, collapses columns to + estimate a density using \code{sscomp}, then using that as \code{wt} + in further \code{sscomp} calls to estimate composition for each + column. +} +\references{ + Gu, C. (2020), Composition estimation via shrinkage. + \emph{manuscript}. +} diff -Nru r-cran-gss-2.2-0/MD5 r-cran-gss-2.2-2/MD5 --- r-cran-gss-2.2-0/MD5 2020-05-04 05:20:23.000000000 +0000 +++ r-cran-gss-2.2-2/MD5 2020-05-26 05:20:03.000000000 +0000 @@ -1,15 +1,15 @@ -4beab7f87614ba21ae92f4879fe0e0df *ChangeLog -5f847a7ff2964a8322acd73461e492bc *DESCRIPTION -0f6b858d42fc1e6af7774e5d4a9c3300 *INDEX -53174290c2c5d3bddfe81254c7abfa53 *NAMESPACE +22fc0985d2cc9446dd1a3c39ab6526d7 *ChangeLog +aa20d4dabee3fd8acde750d7fc5d3d43 *DESCRIPTION +24ff2b8f15521a49b59f6d19146ae6df *INDEX +20c494cb2d9aaa1a65f87cf5afd95df6 *NAMESPACE 1d00015b10d8256aaede525722621ffc *R/cdsscden.R 03873ecc380382307d04da914fb5a866 *R/cdssden.R a4cf561453300bc881519be811e6e36c *R/dsscden.R 28afb3bc3469b09d1db335b5bfe4c88e *R/dsscopu.R c887032085de3b8aa5728103301014ab *R/dssden.R -66c8a55c9254540eb7cae2930446ae77 *R/family.R -53e1b86f0b4f1981ec2da0fc5e7fb1d0 *R/family.cv.R -bed7aa9ccb46dce38cd135aefe71349d *R/family.proj.R +559874c71d989cb315af06eca7797c56 *R/family.R +8cf03c37c38512d84831d3ddad9c33b7 *R/family.cv.R +e845e29cbedeefa26e421410d897ebf5 *R/family.proj.R 630dbcbb2a0ced555d40e693b7b3f4d4 *R/family.surv.R d67212f47d1a4287b478740f0fb89992 *R/fitted.R 7b557a66a85c9a87034d408e71e30a95 *R/gauss.quad.R @@ -36,19 +36,20 @@ 500416a79d3297d43b5f35c78b640fda *R/project.ssanova.R 023ed96bb4991e538c3f38a7a8bb3224 *R/project.ssanova9.R 5a78c5b0ac10960f45efb305efa74b00 *R/project.sscden.R -523f48d90ebe5792f08cf63e387de5f1 *R/project.sscden1.R +efcfe6ca48d01c38d4db04c26e138805 *R/project.sscden1.R 50ed5e000696a4ec366834a09673e448 *R/project.sscox.R 89a6175fe772e65c76ab3eb644acd316 *R/project.ssden.R -c95e17013f7411b89d0f8e14b6d2a3b1 *R/project.ssden1.R +8133bee08081d95af25fd6d2a1f905de *R/project.ssden1.R fdc26fdef9a730f792d3c3bd146c0940 *R/project.sshzd.R -5d77baee61428e3359defc8a7599c68b *R/project.sshzd1.R +794230b5f6c1e47dfca0fef94ebbf311 *R/project.sshzd1.R bf5f875bbef9fb78e75bafa5aa4be563 *R/project.ssllrm.R d44fab9e998870ebdb9a3c393d0ef756 *R/smolyak.R -c1e008d561780b72c7b07a39e7562b3f *R/ssanova.R +912a7cb4edd645076b72eaae69d220e6 *R/ssanova.R dd4aa54b10ec5e2a8b0cdff18780d562 *R/ssanova0.R 9be84d7ff1b4e8a5922bd678ace8b40f *R/ssanova9.R edb14e97f6de2cb36d610cc02725ba3a *R/sscden.R 40ddb4f3d1511288c96182020673fa15 *R/sscden1.R +1cbca9d45e7d735cd750a1f29c8b786a *R/sscomp.R 58bfc87ec8debc40bdf3ad95f4df085e *R/sscopu.R 111d09029fc69db43413326a418fb286 *R/sscopu2.R b9fad02c0244197802cc8fd0fcdde239 *R/sscox.R @@ -136,6 +137,7 @@ e2f739c757a04a968ec837b15ed91985 *man/ssanova0.Rd e54aa57ed8c94851cb790cd9de84b871 *man/ssanova9.Rd a56a56fb459ddc58c95c27e8b9e37ef8 *man/sscden.Rd +a89272e0fa273b6524da0e23574f96bb *man/sscomp.Rd 142a1be80d200caf0cbd80218c2db7bc *man/sscopu.Rd 4df29e6fff4a4655285f24904cb212c3 *man/sscox.Rd 97f4d0c57cfa8fac287275a9588eca88 *man/ssden.Rd @@ -153,7 +155,6 @@ 0423a47eb8c93a22c1ec15136a2419f5 *src/cdennewton.f ac411cbbffa81ff956cb59e79f67403c *src/cdennewton10.f 08b22168d8e387134de819afae34c70d *src/copu2newton.f -1d0848b9a9c7ec70927d1385723b00fd *src/dchdc0.f 7660189020bc629e33531dfccc58721f *src/dcoef.f b95abc103e26f67dc5c543096d0a9967 *src/dcore.f b05ac68613d1536384c72933d4d089be *src/dcrdr.f @@ -178,7 +179,7 @@ 53df31681eb9b0911ec8bb3b5e9cc0c5 *src/hzdaux.f 44cf970d0d0271b391ccdfc5475d3561 *src/hzdnewton.f fa5c780f4bb48e1aa23fa7cd9be53e57 *src/hzdnewton10.f -16be7665de52ce87120138bcda100182 *src/init.c +f3314da76ddac6f573346ba745289e56 *src/init.c 946e7257e372eac1629e256df6afde4a *src/llrmnewton.f 88109ec6b4f9ff4bd8b525f0a866c332 *src/ratfor/cdennewton.r 025d7e6ce3a32679a292ebb44bb3e4ec *src/ratfor/cdennewton10.r diff -Nru r-cran-gss-2.2-0/NAMESPACE r-cran-gss-2.2-2/NAMESPACE --- r-cran-gss-2.2-0/NAMESPACE 2020-05-02 19:09:23.000000000 +0000 +++ r-cran-gss-2.2-2/NAMESPACE 2020-05-26 03:42:50.000000000 +0000 @@ -10,7 +10,7 @@ predict1, predict9, project, psscden, pssden, qsscden, qssden, smolyak.quad, smolyak.size, ssanova, ssanova0, ssanova9, sscden, sscden1, sscox, ssden, ssden1, sshzd, sshzd1, ssllrm, - survexp.sshzd) + survexp.sshzd,sscomp,sscomp2) export(sscopu, sscopu2, dsscopu, cdsscopu, cpsscopu, cqsscopu, sshzd2d, sshzd2d1, hzdrate.sshzd2d, survexp.sshzd2d) # export internal functions used in examples diff -Nru r-cran-gss-2.2-0/R/family.cv.R r-cran-gss-2.2-2/R/family.cv.R --- r-cran-gss-2.2-0/R/family.cv.R 2019-06-26 05:03:48.000000000 +0000 +++ r-cran-gss-2.2-2/R/family.cv.R 2020-05-16 13:32:59.000000000 +0000 @@ -46,19 +46,15 @@ v <- t(sr)%*%(wt*w*sr)/sum(wt*w)-outer(mu,mu) v[(nnull+1):nn,(nnull+1):nn] <- v[(nnull+1):nn,(nnull+1):nn]+q/sum(wt*y) ## Cholesky decomposition of H - z <- .Fortran("dchdc0", - v=as.double(v), as.integer(nn), as.integer(nn), - double(nn), jpvt=as.integer(rep(0,nn)), - as.integer(1), rkv=integer(1), - PACKAGE="gss")[c("v","jpvt","rkv")] - v <- matrix(z$v,nn,nn) - rkv <- z$rkv + suppressWarnings(z <- chol(v,pivot=TRUE)) + v <- z + rkv <- attr(z,"rank") while (v[rkv,rkv]1) { - for (i in 1:(nnu-1)) { - tmp <- 0 - for (j in (i+1):nnu) tmp <- tmp+sum(wt*y[,j+1])/sum(wt) - lkhdnew <- lkhdnew-tmp*nu[i] + lkhd.line <- function(x) { + ddnew <- dd-c(x)*dd.diff + nu <- exp(ddnew) + G <- c(0,cumsum(nu)) + P <- exp(outer(eta,G,"+")) + lkhd <- 0 + for (i in 1:(nnu+1)) + lkhd <- lkhd+sum(wt*(y[,i]+y[,i+1])*log(1+P[,i]))/sum(wt) + for (i in 1:nnu) lkhd <- lkhd-sum(wt*y[,i+1])/sum(wt)*log(exp(nu[i])-1) + if (nnu>1) { + for (i in 1:(nnu-1)) { + tmp <- 0 + for (j in (i+1):nnu) tmp <- tmp+sum(wt*y[,j+1])/sum(wt) + lkhd <- lkhd-tmp*nu[i] + } } + lkhd } - if (!is.finite(lkhdnew)) { - grad <- grad/2 + if (!is.finite(lkhdnew <- lkhd.line(1))) { + dd.diff <- dd.diff/2 next } - if (lkhdnew-lkhd<(1+abs(lkhd)*10*.Machine$double.eps)) break - grad <- grad/2 - if (max(grad)/mumax<10*.Machine$double.eps) break + ddnew <- dd-dd.diff + if (lkhdnew-lkhd<(1+abs(lkhd))*10*.Machine$double.eps) break + z <- nlm0(lkhd.line,c(0,1)) + ddnew <- dd-z$est*dd.diff + lkhdnew <- z$min + break } disc <- abs(lkhdnew-lkhd)/(1+abs(lkhd)) disc <- max(disc,max(abs(dd-ddnew)/(1+abs(dd)))) diff -Nru r-cran-gss-2.2-0/R/project.sscden1.R r-cran-gss-2.2-2/R/project.sscden1.R --- r-cran-gss-2.2-0/R/project.sscden1.R 2014-07-03 23:05:04.000000000 +0000 +++ r-cran-gss-2.2-2/R/project.sscden1.R 2020-05-16 13:21:37.000000000 +0000 @@ -162,7 +162,7 @@ mu <- s.eta[id.s0] } nn <- length(mu) - z <- chol(v,pivot=TRUE) + suppressWarnings(z <- chol(v,pivot=TRUE)) v <- z rkv <- attr(z,"rank") m.eps <- .Machine$double.eps diff -Nru r-cran-gss-2.2-0/R/project.ssden1.R r-cran-gss-2.2-2/R/project.ssden1.R --- r-cran-gss-2.2-0/R/project.ssden1.R 2014-07-03 23:05:04.000000000 +0000 +++ r-cran-gss-2.2-2/R/project.ssden1.R 2020-05-16 13:22:11.000000000 +0000 @@ -70,7 +70,7 @@ v <- cbind(rbind(ss.wk,t(sr.wk)),rbind(sr.wk,rr.wk)) mu <- c(s.eta[id.s],r.eta.wk) nn <- length(mu) - z <- chol(v,pivot=TRUE) + suppressWarnings(z <- chol(v,pivot=TRUE)) v <- z rkv <- attr(z,"rank") m.eps <- .Machine$double.eps diff -Nru r-cran-gss-2.2-0/R/project.sshzd1.R r-cran-gss-2.2-2/R/project.sshzd1.R --- r-cran-gss-2.2-0/R/project.sshzd1.R 2014-07-03 23:05:04.000000000 +0000 +++ r-cran-gss-2.2-2/R/project.sshzd1.R 2020-05-16 13:22:51.000000000 +0000 @@ -137,7 +137,7 @@ v <- cbind(rbind(ss.wk,t(sr.wk)),rbind(sr.wk,rr.wk)) mu <- c(s.eta[id.s],r.eta.wk) nn <- length(mu) - z <- chol(v,pivot=TRUE) + suppressWarnings(z <- chol(v,pivot=TRUE)) v <- z rkv <- attr(z,"rank") m.eps <- .Machine$double.eps diff -Nru r-cran-gss-2.2-0/R/ssanova.R r-cran-gss-2.2-2/R/ssanova.R --- r-cran-gss-2.2-0/R/ssanova.R 2014-07-03 23:05:04.000000000 +0000 +++ r-cran-gss-2.2-2/R/ssanova.R 2020-05-16 13:26:16.000000000 +0000 @@ -145,7 +145,7 @@ 10^(2*ran.scal)*random$sigma$fun(lambda[-1],random$sigma$env) } if (qr.trace) { - qq.wk <- chol(q.wk,pivot=TRUE) + suppressWarnings(qq.wk <- chol(q.wk,pivot=TRUE)) sr <- cbind(s,10^theta*r[,attr(qq.wk,"pivot")]) sr <- rbind(sr,cbind(matrix(0,nxiz,nnull),qq.wk)) sr <- qr(sr,tol=0) @@ -324,7 +324,7 @@ r.wk0 <- wt*r.wk0 } if (qr.trace) { - qq.wk <- chol(q.wk,pivot=TRUE) + suppressWarnings(qq.wk <- chol(q.wk,pivot=TRUE)) sr <- cbind(s.wk,r.wk0[,attr(qq.wk,"pivot")]) sr <- rbind(sr,cbind(matrix(0,nxiz,nnull),qq.wk)) sr <- qr(sr,tol=0) @@ -505,7 +505,7 @@ wk1[1:nnull,1:nnull] <- sms wk1[1:nnull,nnull+(1:rkq)] <- -t(t(dr)/val) wk1[nnull+(1:rkq),nnull+(1:rkq)] <- wk2 - z <- chol(wk1,pivot=TRUE) + suppressWarnings(z <- chol(wk1,pivot=TRUE)) wk1 <- z rkw <- attr(z,"rank") while (wk1[rkw,rkw]