Re: [R] [Rd] Open a file which name contains a tilde

2019-06-12 Thread Kurt Hornik
> Duncan Murdoch writes:

With c76695 in the trunk, we now only tilde expand file names starting
with a tilde also when using readline.

Best
-k

> On 11/06/2019 4:34 p.m., William Dunlap via R-devel wrote:
>> Note that R treats tildes in file names differently on Windows and Linux.
>> On Windows, it is only replaced if it it at the beginning of the line and
>> is followed by a forward or backward slash or end-of-line.  On Linux it is
>> replaced no matter where it is in the text and ~someUser will be replaced
>> by someUser's home directory (if 'someUser' is a user with a home
>> directory).

> That's not quite true:  On Linux the bug is in the code that uses 
> libreadline, which you don't have to use.  If you just specify
> "--no-readline" when you start R, it will be fine on Linux, as far as I 
> can see.

> I wouldn't choose that as the default way to run R (it's pretty 
> irritating not to have readline support), but it is a workaround for 
> this bug.

> Duncan Murdoch

>> 
>> Hence, if you have a Windows machine that can look at the file system on
>> your Linux machine you can use file.rename on Windows to change the names.
>> My inclination would be to use a bash script on Linux to change the names,
>> but if you are not comfortable with bash try the Windows approach.
>> 
>> Bill Dunlap
>> TIBCO Software
>> wdunlap tibco.com
>> 
>> 
>> On Tue, Jun 11, 2019 at 1:13 PM Frank Schwidom  wrote:
>> 
>>> Hi Gabriel,
>>> 
>>> I actually want to make renames over thousands of files. But if I am not
>>> able to express the source filename of the rename operation I will not be
>>> able to get the work done. Besides the fact that there are issues I think
>>> that R is qualified for solving my problem by the method how it can handle
>>> long vectors of strings, booleans and also lists.
>>> 
>>> Kind regards,
>>> Frank
>>> 
>>> On 2019-06-11 09:49:17, Gabriel Becker wrote:
 Hi Frank,
 I'm hesitant to be "that guy", but in case no one else has brought
>>> this up
 to you, having files with a tilde in their names (generally but
>>> especially
 on a linux system, where ~ in file names has a very important special
 meaning in some cases, as we know) strikes me as an exceptionally bad
 practice anyway. In light of that, the solution with the smallest
>>> amount
 of pain for you is almost surely to just... not do that. Your
>>> filenames
 will be better for it anyway.
 There is a reason no one has complained about this before, and while I
 haven't run a study or anything, I strongly suspect its that
>>> "everyone"
 else is already on the "no tildes in filenames" bandwagon, so this
 behavior, even if technically a bug, has no ability to cause them
 problems.
 Best,
 ~G
 On Tue, Jun 11, 2019 at 8:25 AM Frank Schwidom <[1]schwi...@gmx.net>
 wrote:
 
 Hi,
 
 yes, I have seen this package and it has the same tilde expanding
 problem.
 
 Please excuse me I will cc this answer to r-help and r-devel to
>>> keep the
 discussion running.
 
 Kind regards,
 Frank Schwidom
 
 On 2019-06-11 09:12:36, Gábor Csárdi wrote:
 > Just in case, have you seen the fs package?
 > [2]https://fs.r-lib.org/
 >
 > Gabor
 >
 > On Tue, Jun 11, 2019 at 7:51 AM Frank Schwidom <[3]
>>> schwi...@gmx.net>
 wrote:
 > >
 > > Hi,
 > >
 > > to get rid of any possible filename modification I started a
>>> little
 project to cover my usecase:
 > >
 > > [4]https://github.com/schwidom/simplefs
 > >
 > > This is my first R package, suggestions and a review are
>>> welcome.
 > >
 > > Thanks in advance
 > > Frank Schwidom
 > >
 > > On 2019-06-07 09:04:06, Richard O'Keefe wrote:
 > > >How can expanding tildes anywhere but the beginning of a
>>> file
 name NOT be
 > > >considered a bug?
 > > >On Thu, 6 Jun 2019 at 23:04, Ivan Krylov
 <[1][5]krylov.r...@gmail.com> wrote:
 > > >
 > > >  On Wed, 5 Jun 2019 18:07:15 +0200
 > > >  Frank Schwidom <[2][6]schwi...@gmx.net> wrote:
 > > >
 > > >  > +> path.expand("a ~ b")
 > > >  > [1] "a /home/user b"
 > > >
 > > >  > How can I switch off any file crippling activity?
 > > >
 > > >  It doesn't seem to be possible if readline is enabled and
 works
 > > >  correctly.
 > > >
 > > >  Calls to path.expand [1] end up [2] in R_ExpandFileName
>>> [3],
 which
 > > >  calls R_ExpandFileName_readline [4], which uses
>>> libreadline
 function
 > > >  tilde_expand [5]. tilde_expand seems to be designed to
>>> expand
 '~'
 > > >  anywhere in the string it is handed, i.e. operate on
>>> whole
 command
 > > >  lines, not file paths.
 > > >
 > > >  I am taking the liberty of Cc-ing R-devel in case this
>>> can be
 > > >  considered a bug.
 > > >
>>>

Re: [R] get absolute file path

2010-09-26 Thread Kurt Hornik
> Sebastian Gibb writes:

> Am Sonntag, 26. September 2010, 10:08:39 schrieb Romain Francois:
>> Le 26/09/10 10:00, Sebastian Gibb a écrit :
>> > Hello,
>> > 
>> > I get a value which stores a relative file name. (I get it from another
>> > function, which I don't want to change.)
>> > e.g.
>> > 
>> >> fileName<- "../data/2010-08.csv";
>> > 
>> > Is it possible to get the absolute file path out of this value?
>> > (e.g. /home/sebastian/documents/data/2010-08.csv)
>> > 
>> > Kind regards,
>> > 
>> > Sebastian
>> 
>> Hi,
>> 
>> I often use tools:::file_path_as_absolute which is not exported from the
>> tools namespace, but does the job.
>> 
>> Romain

> Hello Romain,

> thank you, this function works like expected.
> Why is it "hidden"?

Afaics it is exported and documented.

-k

> Kind regards,

> Sebastian

__
R-help@r-project.org mailing list
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.


Re: [R] How to save/load RWeka models into/from a file?

2008-10-19 Thread Kurt Hornik
> Paulo Cortez writes:

> Achim Zeileis wrote:
>> On Thu, 16 Oct 2008, Paulo Cortez wrote:
>> 
>>> Hi,
>>> 
>>> I want to save a RWeka model into a file, in order to retrive it 
>>> latter with a load function.
>>> 
>>> See this example:
>>> 
>>> library(RWeka)
>>> 
>>> NB <- make_Weka_classifier("weka/classifiers/bayes/NaiveBayes")
>>> model<-NB(formula,data=data,...) # does not run but you get the idea
>>> 
>>> save(model,file="model.dat") # simple save R command
>>> # ...
>>> load("model.dat") # load the model from the previously saved file...
>>> model # should work but I get instead this error:
>>> Error in .jcall(x$classifier, "S", "toString") :
>>> RcallMethod: attempt to call a method of a NULL object.
>>> 
>>> What is wrong and how can I solve this problem?
>> 
>> The R object is just a reference to the corresponding object on the Java 
>> side (in Weka). When you close R, the Java/Weka session is also closed 
>> and the model is gone. Thus, when you load the object again in a new 
>> session, you only have a reference to a Java object that does not live 
>> anymore.
>> Z

> Thanks, I understand now what is happening.

> Yet, I still need to save/load a RWeka model to/from a file.
> Thus, how can I do this? Is it impossible in R? Any help?

Using a current version of rJava, you can register the Java side objects
for serialization using .jcache().

E.g.,

  m1 <- J48(Species ~ ., data = iris)
  .jcache(m1$classifier)

then save/load will work as expected.

Eventually, the above may happen automagically.

-k

__
R-help@r-project.org mailing list
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.