[Rd] Where to drop a python script?
Brian Lee Yung Rowe
rowe at muxspace.com
Fri Nov 1 17:30:34 CET 2013
If that's all you want to do, you can ignore the headache by just calling system("python -V").
Then you don't need to save any python scripts.
On Nov 1, 2013, at 10:17 AM, Jonathan Greenberg <jgrn at illinois.edu> wrote:
> This was actually the little script I was going to include (prompting me to
> ask the question): a test for the python version number.
> Save this (between the ***s) as e.g. python_version.py:
>
> ***
>
> import sys
> print(sys.version_info)
>
> ***
>
> I've done almost no python coding, so I was going to call this with a
> system("/pathto/python /pathto/python_version.py",intern=TRUE) call and
> post-process the one-line text output.
>
> --j
>
>
> On Thu, Oct 31, 2013 at 12:45 PM, Paul Gilbert <pgilbert902 at gmail.com>wrote:
>
>>
>>
>> On 13-10-31 01:16 PM, Prof Brian Ripley wrote:
>>
>>> On 31/10/2013 15:33, Paul Gilbert wrote:
>>>
>>>>
>>>>
>>>> On 13-10-31 03:01 AM, Prof Brian Ripley wrote:
>>>>
>>>>> On 31/10/2013 00:40, Paul Gilbert wrote:
>>>>>
>>>>>> The old convention was that it went in the exec/ directory, but as you
>>>>>> can see at
>>>>>> http://cran.at.r-project.org/**doc/manuals/r-devel/R-exts.**
>>>>>> html#Non_002dR-scripts-in-**packages<http://cran.at.r-project.org/doc/manuals/r-devel/R-exts.html#Non_002dR-scripts-in-packages>
>>>>>>
>>>>>>
>>>>>>
>>>>>> it can be in inst/anyName/. A minor convenience of exec/ is that the
>>>>>> directory has the same name in source and when installed, whereas
>>>>>> inst/anyName gets moved to anyName/, so debugging can be a tiny bit
>>>>>> easier with exec/.
>>>>>>
>>>>>> Having just put a package (TSjson) on CRAN with a python script, here
>>>>>> are a few other pointers for getting it on CRAN:
>>>>>>
>>>>>> -SystemRequirements: should indicate if a particular version of python
>>>>>> is needed, and any non-default modules that are needed. (My package
>>>>>> does
>>>>>> not work with Python 3 because some modules are not available.) Some of
>>>>>> the libraries have changed, so it could be a bit tricky to make
>>>>>> something work easily with both 2 and 3.
>>>>>>
>>>>>> -You need a README to explain how to install Python. (If you look at or
>>>>>> use mine, please let me know if you find problems.)
>>>>>>
>>>>>
>>>>> Better to describe exactly what you need: installation instructions go
>>>>> stale very easily.
>>>>>
>>>>> -The Linux and Sun CRAN test machines have Python 2 whereas winbuilder
>>>>>> has Python 3. Be prepared to explain that the package will not work on
>>>>>> one or the other.
>>>>>>
>>>>>
>>>>> Not true. Linux and Solaris (sic) have both: the Solaris machines have
>>>>> 2.6 and 3.3.
>>>>>
>>>>
>>>> For an R package how does one go about specifying which should be used?
>>>>
>>>
>>> You ask the user to tell you the path or at least the command name, e.g.
>>> by an environment variable or R function argument. Just like any other
>>> external program such as GhostScript.
>>>
>>
>> Yes, but since I don't have direct access to the CRAN test machines,
>> specifically, on the CRAN test machines, how do I specify to use Python 2
>> or Python 3? (That is, I think you are the user when CRAN tests are done on
>> Solaris, so I am asking you.)
>>
>>
>>
>>>
>>>> Please do not spread misinformation about machines you do
>>>>> not have any access to.
>>>>>
>>>>>
>>>>>> Another option to system() is pipe()
>>>>>>
>>>>>> Paul
>>>>>>
>>>>>> On 13-10-30 03:15 PM, Dirk Eddelbuettel wrote:
>>>>>>
>>>>>>>
>>>>>>> On 30 October 2013 at 13:54, Jonathan Greenberg wrote:
>>>>>>> | R-developers:
>>>>>>> |
>>>>>>> | I have a small python script that I'd like to include in an R
>>>>>>> package I'm
>>>>>>> | developing, but I'm a bit unclear about which subfolder it should go
>>>>>>> in. R
>>>>>>> | will be calling the script via a system() call. Thanks!
>>>>>>>
>>>>>>> Up to you as you control the path. As "Writing R Extensions" explains,
>>>>>>> everything below the (source) directory inst/ will get installed. I
>>>>>>> like
>>>>>>> inst/extScripts/ (or similar) as it denotes that it is an external
>>>>>>> script.
>>>>>>>
>>>>>>> As an example, the gdata package has Perl code for xls reading/writing
>>>>>>> below a
>>>>>>> directory inst/perl/ -- and I think there are more packages doing
>>>>>>> this.
>>>>>>>
>>>>>>> Dirk
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>> ______________________________**________________
>>>>>> R-devel at r-project.org mailing list
>>>>>> https://stat.ethz.ch/mailman/**listinfo/r-devel<https://stat.ethz.ch/mailman/listinfo/r-devel>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>
>>>
>> ______________________________**________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/**listinfo/r-devel<https://stat.ethz.ch/mailman/listinfo/r-devel>
>>
>
>
>
> --
> Jonathan A. Greenberg, PhD
> Assistant Professor
> Global Environmental Analysis and Remote Sensing (GEARS) Laboratory
> Department of Geography and Geographic Information Science
> University of Illinois at Urbana-Champaign
> 259 Computing Applications Building, MC-150
> 605 East Springfield Avenue
> Champaign, IL 61820-6371
> Phone: 217-300-1924
> http://www.geog.illinois.edu/~jgrn/
> AIM: jgrn307, MSN: jgrn307 at hotmail.com, Gchat: jgrn307, Skype: jgrn3007
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
More information about the R-devel
mailing list