A user contacted me directly about this, I answered with my best understanding of the recent R-help discussion of the issue, and their response to my response shows that I'm not quite right. I am emphatically not an MS Windows user so am asking for help -- which I will cut/paste to this user and to the next dozen who will invariably contact me directly. Thanks, Terry Therneau -------- Forwarded Message -------- Subject: RE: survival package Date: Wed, 26 Apr 2017 18:05:30 +0000 From: SeshanV at mskcc.org To: Therneau, Terry M., Ph.D. <therneau at mayo.edu> Thank you for the quick response. The session info command for v3.4.0 does in fact report survival_2.41-3. Furthermore, while both v3.3.1 and v3.40 are on the same computer the library paths do not have any directory in common:> .libPaths()[1] "C:/Program Files/R/R-3.4.0/library">and> .libPaths()[1] "C:/Program Files/R/R-3.3.1/library">Thanks, Venkat -----Original Message----- From: Therneau, Terry M., Ph.D. [mailto:therneau at mayo.edu] Sent: Wednesday, April 26, 2017 1:42 PM To: Seshan, Venkatraman E./Epidemiology-Biostatistics Subject: Re: survival package This has been discussed in R-help by multiple people. You have a pre-3.4 version of the survival package somewhere on your search path, and the method for resolving .C calls has changed. The sessionInfo command should report survival version 2.41-3. Terry T. On 04/26/2017 12:17 PM, SeshanV at mskcc.org wrote:> Dear Prof. Therneau, > > I am encountering an error message when I try to use the coxfit6 routine from the survival package under the 3.4.0 version of R. The minimal function and the script are in the attached file. This function worked under earlier versions of R. > > ---------------------------------------------------------------------- > ------------------------- > > *************************** > ** Works under R-3.3.1 ** > *************************** > >> source("coxfit6-issue.R") > [1] -0.4838181 > >> sessionInfo() > R version 3.3.1 (2016-06-21) > Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 7 x64 > (build 7601) Service Pack 1 > > locale: > [1] LC_COLLATE=English_United States.1252 [2] LC_CTYPE=English_United > States.1252 [3] LC_MONETARY=English_United States.1252 [4] > LC_NUMERIC=C [5] LC_TIME=English_United States.1252 > > attached base packages: > [1] stats graphics grDevices utils datasets methods base > > other attached packages: > [1] survival_2.39-4 > > loaded via a namespace (and not attached): > [1] Matrix_1.2-6 splines_3.3.1 grid_3.3.1 lattice_0.20-33 > > ---------------------------------------------------------------------- > ------------------------- > > *********************************** > ** Does not work under R-3.4.0 ** > *********************************** > >> library(survival) >> source("coxfit6-issue.R") > Error in .Call("Ccoxfit6", as.integer(control$iter.max), stime, as.integer(sstat), : > "Ccoxfit6" not available for .Call() for package "survival" >> sessionInfo() > R version 3.4.0 (2017-04-21) > Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 7 x64 > (build 7601) Service Pack 1 > > Matrix products: default > > locale: > [1] LC_COLLATE=English_United States.1252 [2] LC_CTYPE=English_United > States.1252 [3] LC_MONETARY=English_United States.1252 [4] > LC_NUMERIC=C [5] LC_TIME=English_United States.1252 > > attached base packages: > [1] stats graphics grDevices utils datasets methods base > > other attached packages: > [1] survival_2.41-3 > > loaded via a namespace (and not attached): > [1] compiler_3.4.0 Matrix_1.2-9 splines_3.4.0 grid_3.4.0 > [5] lattice_0.20-35 > > ---------------------------------------------------------------------- > ------------------------- > > When I remove the quotes surrounding Ccoxfit6 in the function both versions give the error: > > Error in phcoefs(stim[ii], sts[ii], as.matrix(as.double(cvt[ii])), oo$coefficients, : > object 'Ccoxfit6' not found > > > I would greatly appreciate your help in resolving this. > > Thanks, > Venkat Seshan >==================================================================== Please note that this e-mail and any files transmitted from Memorial Sloan Kettering Cancer Center may be privileged, confidential, and protected from disclosure under applicable law. If the reader of this message is not the intended recipient, or an employee or agent responsible for delivering this message to the intended recipient, you are hereby notified that any reading, dissemination, distribution, copying, or other use of this communication or any of its attachments is strictly prohibited. If you have received this communication in error, please notify the sender immediately by replying to this message and deleting this message, any attachments, and all copies and backups from your computer.
On 26/04/2017 2:51 PM, Therneau, Terry M., Ph.D. wrote:> A user contacted me directly about this, I answered with my best understanding of the > recent R-help discussion of the issue, and their response to my response shows that I'm > not quite right. > > I am emphatically not an MS Windows user so am asking for help -- which I will cut/paste > to this user and to the next dozen who will invariably contact me directly. > > Thanks, > Terry Therneau > > > > -------- Forwarded Message -------- > Subject: RE: survival package > Date: Wed, 26 Apr 2017 18:05:30 +0000 > From: SeshanV at mskcc.org > To: Therneau, Terry M., Ph.D. <therneau at mayo.edu> > > Thank you for the quick response. The session info command for v3.4.0 does in fact report > survival_2.41-3. Furthermore, while both v3.3.1 and v3.40 are on the same computer the > library paths do not have any directory in common: > >> .libPaths() > [1] "C:/Program Files/R/R-3.4.0/library" >> > > and >> .libPaths() > [1] "C:/Program Files/R/R-3.3.1/library" >> > > > Thanks, > Venkat > > > -----Original Message----- > From: Therneau, Terry M., Ph.D. [mailto:therneau at mayo.edu] Sent: Wednesday, April 26, 2017 > 1:42 PM > To: Seshan, Venkatraman E./Epidemiology-Biostatistics > Subject: Re: survival package > > This has been discussed in R-help by multiple people. You have a pre-3.4 version of the > survival package somewhere on your search path, and the method for resolving .C calls has > changed. The sessionInfo command should report survival version 2.41-3. > > Terry T. > > > On 04/26/2017 12:17 PM, SeshanV at mskcc.org wrote: >> Dear Prof. Therneau, >> >> I am encountering an error message when I try to use the coxfit6 routine from the survival package under the 3.4.0 version of R. The minimal function and the script are in the attached file. This function worked under earlier versions of R. >> >> ---------------------------------------------------------------------- >> ------------------------- >> >> *************************** >> ** Works under R-3.3.1 ** >> *************************** >> >>> source("coxfit6-issue.R") >> [1] -0.4838181 >> >>> sessionInfo() >> R version 3.3.1 (2016-06-21) >> Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 7 x64 >> (build 7601) Service Pack 1 >> >> locale: >> [1] LC_COLLATE=English_United States.1252 [2] LC_CTYPE=English_United >> States.1252 [3] LC_MONETARY=English_United States.1252 [4] >> LC_NUMERIC=C [5] LC_TIME=English_United States.1252 >> >> attached base packages: >> [1] stats graphics grDevices utils datasets methods base >> >> other attached packages: >> [1] survival_2.39-4 >> >> loaded via a namespace (and not attached): >> [1] Matrix_1.2-6 splines_3.3.1 grid_3.3.1 lattice_0.20-33 >> >> ---------------------------------------------------------------------- >> ------------------------- >> >> *********************************** >> ** Does not work under R-3.4.0 ** >> *********************************** >> >>> library(survival) >>> source("coxfit6-issue.R") >> Error in .Call("Ccoxfit6", as.integer(control$iter.max), stime, as.integer(sstat), : >> "Ccoxfit6" not available for .Call() for package "survival"As far as I can see, that line doesn't appear in the current survival source code, it's from some earlier version of the package. The current one has coxfit <- .Call(Ccoxfit6, as.integer(maxiter), stime, sstat, x[sorted,], as.double(offset[sorted]), weights, newstrat, as.integer(method=="efron"), as.double(control$eps), as.double(control$toler.chol), as.vector(init), as.integer(1)) # internally rescale There are several differences, the one leading to the error being the change from "Ccoxfit6" in quotes, to Ccoxfit6 not in quotes. That corresponds to the difference between a registered symbol and an unregistered one. Without seeing the code that led to the error message I can't really say how the error came about. There are a few ways: - The user has a copy of the coxph.fit function from an older version of survival saved in their workspace, and are using that one instead of the current one. - Some part of your code returns functions, and one of those is making this call based on an object produced in an earlier version of survival. - There are really two versions of survival on the search path (or perhaps copied bits of one), and this call isn't in survival 2.41-3 at all. Duncan Murdoch>>> sessionInfo() >> R version 3.4.0 (2017-04-21) >> Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 7 x64 >> (build 7601) Service Pack 1 >> >> Matrix products: default >> >> locale: >> [1] LC_COLLATE=English_United States.1252 [2] LC_CTYPE=English_United >> States.1252 [3] LC_MONETARY=English_United States.1252 [4] >> LC_NUMERIC=C [5] LC_TIME=English_United States.1252 >> >> attached base packages: >> [1] stats graphics grDevices utils datasets methods base >> >> other attached packages: >> [1] survival_2.41-3 >> >> loaded via a namespace (and not attached): >> [1] compiler_3.4.0 Matrix_1.2-9 splines_3.4.0 grid_3.4.0 >> [5] lattice_0.20-35 >> >> ---------------------------------------------------------------------- >> ------------------------- >> >> When I remove the quotes surrounding Ccoxfit6 in the function both versions give the error: >> >> Error in phcoefs(stim[ii], sts[ii], as.matrix(as.double(cvt[ii])), oo$coefficients, : >> object 'Ccoxfit6' not found >> >> >> I would greatly appreciate your help in resolving this. >> >> Thanks, >> Venkat Seshan >> > > > ====================================================================> > Please note that this e-mail and any files transmitted from > Memorial Sloan Kettering Cancer Center may be privileged, confidential, > and protected from disclosure under applicable law. If the reader of > this message is not the intended recipient, or an employee or agent > responsible for delivering this message to the intended recipient, > you are hereby notified that any reading, dissemination, distribution, > copying, or other use of this communication or any of its attachments > is strictly prohibited. If you have received this communication in > error, please notify the sender immediately by replying to this message > and deleting this message, any attachments, and all copies and backups > from your computer. > > ______________________________________________ > 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. >
Attaching the code that generates the error. The function phcoefs in the attached was modeled after coxph.fit from which all the preprocessing has been stripped so that just coxfit6 (C code) can be called to estimate the coefficients.> library(survival) > source("coxfit6-issue.R")Error in .Call("Ccoxfit6", as.integer(control$iter.max), stime, as.integer(sstat), : "Ccoxfit6" not available for .Call() for package "survival" Same file with the quotes surrounding "Ccoxfit6" removed> source("coxfit6-issue.R")Error in phcoefs(stim[ii], sts[ii], as.matrix(as.double(cvt[ii])), oo$coefficients, : object 'Ccoxfit6' not found>I can confirm that this error occurs in linux (Ubuntu 14.0.4.5) as well. Thanks, Venkat -----Original Message----- From: Duncan Murdoch [mailto:murdoch.duncan at gmail.com] Sent: Wednesday, April 26, 2017 4:18 PM To: Therneau, Terry M., Ph.D.; R-help Cc: Seshan, Venkatraman E./Epidemiology-Biostatistics Subject: Re: [R] survival package can't find Ccoxfit6 On 26/04/2017 2:51 PM, Therneau, Terry M., Ph.D. wrote:> A user contacted me directly about this, I answered with my best > understanding of the recent R-help discussion of the issue, and their > response to my response shows that I'm not quite right. > > I am emphatically not an MS Windows user so am asking for help -- > which I will cut/paste to this user and to the next dozen who will invariably contact me directly. > > Thanks, > Terry Therneau > > > > -------- Forwarded Message -------- > Subject: RE: survival package > Date: Wed, 26 Apr 2017 18:05:30 +0000 > From: SeshanV at mskcc.org > To: Therneau, Terry M., Ph.D. <therneau at mayo.edu> > > Thank you for the quick response. The session info command for v3.4.0 > does in fact report survival_2.41-3. Furthermore, while both v3.3.1 > and v3.40 are on the same computer the library paths do not have any directory in common: > >> .libPaths() > [1] "C:/Program Files/R/R-3.4.0/library" >> > > and >> .libPaths() > [1] "C:/Program Files/R/R-3.3.1/library" >> > > > Thanks, > Venkat > > > -----Original Message----- > From: Therneau, Terry M., Ph.D. [mailto:therneau at mayo.edu] Sent: > Wednesday, April 26, 2017 > 1:42 PM > To: Seshan, Venkatraman E./Epidemiology-Biostatistics > Subject: Re: survival package > > This has been discussed in R-help by multiple people. You have a > pre-3.4 version of the survival package somewhere on your search path, and the method for resolving .C calls has > changed. The sessionInfo command should report survival version 2.41-3. > > Terry T. > > > On 04/26/2017 12:17 PM, SeshanV at mskcc.org wrote: >> Dear Prof. Therneau, >> >> I am encountering an error message when I try to use the coxfit6 routine from the survival package under the 3.4.0 version of R. The minimal function and the script are in the attached file. This function worked under earlier versions of R. >> >> --------------------------------------------------------------------- >> - >> ------------------------- >> >> *************************** >> ** Works under R-3.3.1 ** >> *************************** >> >>> source("coxfit6-issue.R") >> [1] -0.4838181 >> >>> sessionInfo() >> R version 3.3.1 (2016-06-21) >> Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 7 >> x64 (build 7601) Service Pack 1 >> >> locale: >> [1] LC_COLLATE=English_United States.1252 [2] LC_CTYPE=English_United >> States.1252 [3] LC_MONETARY=English_United States.1252 [4] >> LC_NUMERIC=C [5] LC_TIME=English_United States.1252 >> >> attached base packages: >> [1] stats graphics grDevices utils datasets methods base >> >> other attached packages: >> [1] survival_2.39-4 >> >> loaded via a namespace (and not attached): >> [1] Matrix_1.2-6 splines_3.3.1 grid_3.3.1 lattice_0.20-33 >> >> --------------------------------------------------------------------- >> - >> ------------------------- >> >> *********************************** >> ** Does not work under R-3.4.0 ** >> *********************************** >> >>> library(survival) >>> source("coxfit6-issue.R") >> Error in .Call("Ccoxfit6", as.integer(control$iter.max), stime, as.integer(sstat), : >> "Ccoxfit6" not available for .Call() for package "survival"As far as I can see, that line doesn't appear in the current survival source code, it's from some earlier version of the package. The current one has coxfit <- .Call(Ccoxfit6, as.integer(maxiter), stime, sstat, x[sorted,], as.double(offset[sorted]), weights, newstrat, as.integer(method=="efron"), as.double(control$eps), as.double(control$toler.chol), as.vector(init), as.integer(1)) # internally rescale There are several differences, the one leading to the error being the change from "Ccoxfit6" in quotes, to Ccoxfit6 not in quotes. That corresponds to the difference between a registered symbol and an unregistered one. Without seeing the code that led to the error message I can't really say how the error came about. There are a few ways: - The user has a copy of the coxph.fit function from an older version of survival saved in their workspace, and are using that one instead of the current one. - Some part of your code returns functions, and one of those is making this call based on an object produced in an earlier version of survival. - There are really two versions of survival on the search path (or perhaps copied bits of one), and this call isn't in survival 2.41-3 at all. Duncan Murdoch>>> sessionInfo() >> R version 3.4.0 (2017-04-21) >> Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 7 >> x64 (build 7601) Service Pack 1 >> >> Matrix products: default >> >> locale: >> [1] LC_COLLATE=English_United States.1252 [2] LC_CTYPE=English_United >> States.1252 [3] LC_MONETARY=English_United States.1252 [4] >> LC_NUMERIC=C [5] LC_TIME=English_United States.1252 >> >> attached base packages: >> [1] stats graphics grDevices utils datasets methods base >> >> other attached packages: >> [1] survival_2.41-3 >> >> loaded via a namespace (and not attached): >> [1] compiler_3.4.0 Matrix_1.2-9 splines_3.4.0 grid_3.4.0 >> [5] lattice_0.20-35 >> >> --------------------------------------------------------------------- >> - >> ------------------------- >> >> When I remove the quotes surrounding Ccoxfit6 in the function both versions give the error: >> >> Error in phcoefs(stim[ii], sts[ii], as.matrix(as.double(cvt[ii])), oo$coefficients, : >> object 'Ccoxfit6' not found >> >> >> I would greatly appreciate your help in resolving this. >> >> Thanks, >> Venkat Seshan >> > > > ====================================================================> > Please note that this e-mail and any files transmitted from > Memorial Sloan Kettering Cancer Center may be privileged, confidential, > and protected from disclosure under applicable law. If the reader of > this message is not the intended recipient, or an employee or agent > responsible for delivering this message to the intended recipient, > you are hereby notified that any reading, dissemination, distribution, > copying, or other use of this communication or any of its attachments > is strictly prohibited. If you have received this communication in > error, please notify the sender immediately by replying to this message > and deleting this message, any attachments, and all copies and backups > from your computer. > > ______________________________________________ > 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. >==================================================================== Please note that this e-mail and any files transmitted from Memorial Sloan Kettering Cancer Center may be privileged, confidential, and protected from disclosure under applicable law. If the reader of this message is not the intended recipient, or an employee or agent responsible for delivering this message to the intended recipient, you are hereby notified that any reading, dissemination, distribution, copying, or other use of this communication or any of its attachments is strictly prohibited. If you have received this communication in error, please notify the sender immediately by replying to this message and deleting this message, any attachments, and all copies and backups from your computer.
Thanks to Henrik Bengtsson I found a work around which is to use environment(phcoefs) <- asNamespace("survival") It seems like the symbols that are accessed using .Call are not accessible from outside the package that defines it.> phcoefs(stim[ii], sts[ii], as.matrix(as.double(cvt[ii])), oo$coefficients, control)Error in phcoefs(stim[ii], sts[ii], as.matrix(as.double(cvt[ii])), oo$coefficients, : object 'Ccoxfit6' not found> environment(phcoefs) <- asNamespace("survival") > phcoefs(stim[ii], sts[ii], as.matrix(as.double(cvt[ii])), oo$coefficients, control)[1] -0.4838181 Venkat ________________________________________ From: Duncan Murdoch [murdoch.duncan at gmail.com] Sent: Wednesday, April 26, 2017 4:17 PM To: Therneau, Terry M., Ph.D.; R-help Cc: Seshan, Venkatraman E./Epidemiology-Biostatistics Subject: Re: [R] survival package can't find Ccoxfit6 On 26/04/2017 2:51 PM, Therneau, Terry M., Ph.D. wrote:> A user contacted me directly about this, I answered with my best understanding of the > recent R-help discussion of the issue, and their response to my response shows that I'm > not quite right. > > I am emphatically not an MS Windows user so am asking for help -- which I will cut/paste > to this user and to the next dozen who will invariably contact me directly. > > Thanks, > Terry Therneau > > > > -------- Forwarded Message -------- > Subject: RE: survival package > Date: Wed, 26 Apr 2017 18:05:30 +0000 > From: SeshanV at mskcc.org > To: Therneau, Terry M., Ph.D. <therneau at mayo.edu> > > Thank you for the quick response. The session info command for v3.4.0 does in fact report > survival_2.41-3. Furthermore, while both v3.3.1 and v3.40 are on the same computer the > library paths do not have any directory in common: > >> .libPaths() > [1] "C:/Program Files/R/R-3.4.0/library" >> > > and >> .libPaths() > [1] "C:/Program Files/R/R-3.3.1/library" >> > > > Thanks, > Venkat > > > -----Original Message----- > From: Therneau, Terry M., Ph.D. [mailto:therneau at mayo.edu] Sent: Wednesday, April 26, 2017 > 1:42 PM > To: Seshan, Venkatraman E./Epidemiology-Biostatistics > Subject: Re: survival package > > This has been discussed in R-help by multiple people. You have a pre-3.4 version of the > survival package somewhere on your search path, and the method for resolving .C calls has > changed. The sessionInfo command should report survival version 2.41-3. > > Terry T. > > > On 04/26/2017 12:17 PM, SeshanV at mskcc.org wrote: >> Dear Prof. Therneau, >> >> I am encountering an error message when I try to use the coxfit6 routine from the survival package under the 3.4.0 version of R. The minimal function and the script are in the attached file. This function worked under earlier versions of R. >> >> ---------------------------------------------------------------------- >> ------------------------- >> >> *************************** >> ** Works under R-3.3.1 ** >> *************************** >> >>> source("coxfit6-issue.R") >> [1] -0.4838181 >> >>> sessionInfo() >> R version 3.3.1 (2016-06-21) >> Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 7 x64 >> (build 7601) Service Pack 1 >> >> locale: >> [1] LC_COLLATE=English_United States.1252 [2] LC_CTYPE=English_United >> States.1252 [3] LC_MONETARY=English_United States.1252 [4] >> LC_NUMERIC=C [5] LC_TIME=English_United States.1252 >> >> attached base packages: >> [1] stats graphics grDevices utils datasets methods base >> >> other attached packages: >> [1] survival_2.39-4 >> >> loaded via a namespace (and not attached): >> [1] Matrix_1.2-6 splines_3.3.1 grid_3.3.1 lattice_0.20-33 >> >> ---------------------------------------------------------------------- >> ------------------------- >> >> *********************************** >> ** Does not work under R-3.4.0 ** >> *********************************** >> >>> library(survival) >>> source("coxfit6-issue.R") >> Error in .Call("Ccoxfit6", as.integer(control$iter.max), stime, as.integer(sstat), : >> "Ccoxfit6" not available for .Call() for package "survival"As far as I can see, that line doesn't appear in the current survival source code, it's from some earlier version of the package. The current one has coxfit <- .Call(Ccoxfit6, as.integer(maxiter), stime, sstat, x[sorted,], as.double(offset[sorted]), weights, newstrat, as.integer(method=="efron"), as.double(control$eps), as.double(control$toler.chol), as.vector(init), as.integer(1)) # internally rescale There are several differences, the one leading to the error being the change from "Ccoxfit6" in quotes, to Ccoxfit6 not in quotes. That corresponds to the difference between a registered symbol and an unregistered one. Without seeing the code that led to the error message I can't really say how the error came about. There are a few ways: - The user has a copy of the coxph.fit function from an older version of survival saved in their workspace, and are using that one instead of the current one. - Some part of your code returns functions, and one of those is making this call based on an object produced in an earlier version of survival. - There are really two versions of survival on the search path (or perhaps copied bits of one), and this call isn't in survival 2.41-3 at all. Duncan Murdoch>>> sessionInfo() >> R version 3.4.0 (2017-04-21) >> Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 7 x64 >> (build 7601) Service Pack 1 >> >> Matrix products: default >> >> locale: >> [1] LC_COLLATE=English_United States.1252 [2] LC_CTYPE=English_United >> States.1252 [3] LC_MONETARY=English_United States.1252 [4] >> LC_NUMERIC=C [5] LC_TIME=English_United States.1252 >> >> attached base packages: >> [1] stats graphics grDevices utils datasets methods base >> >> other attached packages: >> [1] survival_2.41-3 >> >> loaded via a namespace (and not attached): >> [1] compiler_3.4.0 Matrix_1.2-9 splines_3.4.0 grid_3.4.0 >> [5] lattice_0.20-35 >> >> ---------------------------------------------------------------------- >> ------------------------- >> >> When I remove the quotes surrounding Ccoxfit6 in the function both versions give the error: >> >> Error in phcoefs(stim[ii], sts[ii], as.matrix(as.double(cvt[ii])), oo$coefficients, : >> object 'Ccoxfit6' not found >> >> >> I would greatly appreciate your help in resolving this. >> >> Thanks, >> Venkat Seshan >> > > > ====================================================================> > Please note that this e-mail and any files transmitted from > Memorial Sloan Kettering Cancer Center may be privileged, confidential, > and protected from disclosure under applicable law. If the reader of > this message is not the intended recipient, or an employee or agent > responsible for delivering this message to the intended recipient, > you are hereby notified that any reading, dissemination, distribution, > copying, or other use of this communication or any of its attachments > is strictly prohibited. If you have received this communication in > error, please notify the sender immediately by replying to this message > and deleting this message, any attachments, and all copies and backups > from your computer. > > ______________________________________________ > 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. >==================================================================== Please note that this e-mail and any files transmitted from Memorial Sloan Kettering Cancer Center may be privileged, confidential, and protected from disclosure under applicable law. If the reader of this message is not the intended recipient, or an employee or agent responsible for delivering this message to the intended recipient, you are hereby notified that any reading, dissemination, distribution, copying, or other use of this communication or any of its attachments is strictly prohibited. If you have received this communication in error, please notify the sender immediately by replying to this message and deleting this message, any attachments, and all copies and backups from your computer.
On 2017-04-26 22:17, Duncan Murdoch wrote:> On 26/04/2017 2:51 PM, Therneau, Terry M., Ph.D. wrote: >> A user contacted me directly about this, I answered with my best >> understanding of the >> recent R-help discussion of the issue, and their response to my >> response shows that I'm >> not quite right. >> >> I am emphatically not an MS Windows user so am asking for help -- >> which I will cut/paste >> to this user and to the next dozen who will invariably contact me >> directly. >> >> Thanks, >> Terry Therneau >> >> >> >> -------- Forwarded Message -------- >> Subject: RE: survival package >> Date: Wed, 26 Apr 2017 18:05:30 +0000 >> From: SeshanV at mskcc.org >> To: Therneau, Terry M., Ph.D. <therneau at mayo.edu> >> >> Thank you for the quick response. The session info command for v3.4.0 >> does in fact report >> survival_2.41-3. Furthermore, while both v3.3.1 and v3.40 are on the >> same computer the >> library paths do not have any directory in common: >> >>> .libPaths() >> [1] "C:/Program Files/R/R-3.4.0/library" >>> >> >> and >>> .libPaths() >> [1] "C:/Program Files/R/R-3.3.1/library" >>> >> >> >> Thanks, >> Venkat >> >> >> -----Original Message----- >> From: Therneau, Terry M., Ph.D. [mailto:therneau at mayo.edu] Sent: >> Wednesday, April 26, 2017 >> 1:42 PM >> To: Seshan, Venkatraman E./Epidemiology-Biostatistics >> Subject: Re: survival package >> >> This has been discussed in R-help by multiple people. You have a >> pre-3.4 version of the >> survival package somewhere on your search path, and the method for >> resolving .C calls has >> changed. The sessionInfo command should report survival version 2.41-3. >> >> Terry T. >> >> >> On 04/26/2017 12:17 PM, SeshanV at mskcc.org wrote: >>> Dear Prof. Therneau, >>> >>> I am encountering an error message when I try to use the coxfit6 >>> routine from the survival package under the 3.4.0 version of R. The >>> minimal function and the script are in the attached file. This >>> function worked under earlier versions of R. >>> >>> ---------------------------------------------------------------------- >>> ------------------------- >>> >>> *************************** >>> ** Works under R-3.3.1 ** >>> *************************** >>> >>>> source("coxfit6-issue.R") >>> [1] -0.4838181 >>> >>>> sessionInfo() >>> R version 3.3.1 (2016-06-21) >>> Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 7 x64 >>> (build 7601) Service Pack 1 >>> >>> locale: >>> [1] LC_COLLATE=English_United States.1252 [2] LC_CTYPE=English_United >>> States.1252 [3] LC_MONETARY=English_United States.1252 [4] >>> LC_NUMERIC=C [5] LC_TIME=English_United States.1252 >>> >>> attached base packages: >>> [1] stats graphics grDevices utils datasets methods base >>> >>> other attached packages: >>> [1] survival_2.39-4 >>> >>> loaded via a namespace (and not attached): >>> [1] Matrix_1.2-6 splines_3.3.1 grid_3.3.1 lattice_0.20-33 >>> >>> ---------------------------------------------------------------------- >>> ------------------------- >>> >>> *********************************** >>> ** Does not work under R-3.4.0 ** >>> *********************************** >>> >>>> library(survival) >>>> source("coxfit6-issue.R") >>> Error in .Call("Ccoxfit6", as.integer(control$iter.max), stime, >>> as.integer(sstat), : >>> "Ccoxfit6" not available for .Call() for package "survival" > > As far as I can see, that line doesn't appear in the current survival > source code, it's from some earlier version of the package. The current > one has > > coxfit <- .Call(Ccoxfit6, > as.integer(maxiter), > stime, > sstat, > x[sorted,], > as.double(offset[sorted]), > weights, > newstrat, > as.integer(method=="efron"), > as.double(control$eps), > as.double(control$toler.chol), > as.vector(init), > as.integer(1)) # internally rescale > > There are several differences, the one leading to the error being the > change from "Ccoxfit6" in quotes, to Ccoxfit6 not in quotes. That > corresponds to the difference between a registered symbol and an > unregistered one.I think it's worthwhile to point out that non-exported symbols are available using ':::'. See WRE Section 5.4. So, after fixing the argument list, just use '.Call(survival:::Ccoxfit6, <args>)' instead of '.Call("Ccoxfit6", <args>, PACKAGE = "survival")'. Henric Winell> > Without seeing the code that led to the error message I can't really say > how the error came about. There are a few ways: > > - The user has a copy of the coxph.fit function from an older version of > survival saved in their workspace, and are using that one instead of the > current one. > > - Some part of your code returns functions, and one of those is making > this call based on an object produced in an earlier version of survival. > > - There are really two versions of survival on the search path (or > perhaps copied bits of one), and this call isn't in survival 2.41-3 at all. > > Duncan Murdoch > >>>> sessionInfo() >>> R version 3.4.0 (2017-04-21) >>> Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 7 x64 >>> (build 7601) Service Pack 1 >>> >>> Matrix products: default >>> >>> locale: >>> [1] LC_COLLATE=English_United States.1252 [2] LC_CTYPE=English_United >>> States.1252 [3] LC_MONETARY=English_United States.1252 [4] >>> LC_NUMERIC=C [5] LC_TIME=English_United States.1252 >>> >>> attached base packages: >>> [1] stats graphics grDevices utils datasets methods base >>> >>> other attached packages: >>> [1] survival_2.41-3 >>> >>> loaded via a namespace (and not attached): >>> [1] compiler_3.4.0 Matrix_1.2-9 splines_3.4.0 grid_3.4.0 >>> [5] lattice_0.20-35 >>> >>> ---------------------------------------------------------------------- >>> ------------------------- >>> >>> When I remove the quotes surrounding Ccoxfit6 in the function both >>> versions give the error: >>> >>> Error in phcoefs(stim[ii], sts[ii], as.matrix(as.double(cvt[ii])), >>> oo$coefficients, : >>> object 'Ccoxfit6' not found >>> >>> >>> I would greatly appreciate your help in resolving this. >>> >>> Thanks, >>> Venkat Seshan >>> >> >> >> ====================================================================>> >> Please note that this e-mail and any files transmitted from >> Memorial Sloan Kettering Cancer Center may be privileged, >> confidential, >> and protected from disclosure under applicable law. If the >> reader of >> this message is not the intended recipient, or an employee or agent >> responsible for delivering this message to the intended recipient, >> you are hereby notified that any reading, dissemination, >> distribution, >> copying, or other use of this communication or any of its >> attachments >> is strictly prohibited. If you have received this communication in >> error, please notify the sender immediately by replying to this >> message >> and deleting this message, any attachments, and all copies and >> backups >> from your computer. >> >> ______________________________________________ >> 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. >> > > ______________________________________________ > 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. >