[R] R maintains old values

J C Nash pro|jcn@@h @end|ng |rom gm@||@com
Tue Jul 3 15:25:39 CEST 2018


For the sake of those who didn't see the link, Jenny objects strongly to startup
lines that either set a personal path or clear the workspace.

While I agree both of these are anti-social to the point of pathology for scripts
that are distributed, I have found it VERY important when testing things to actually
clear the workspace etc. Too many times I've got a result that nobody else would get
because I'm often loading some of my own packages or there are "useful" variables
lurking.

As usual, context is critical. Distributed scripts vs. developmental ones.

Now, to add to the controversy, how do you set a computer on fire?

JN

On 2018-07-03 03:52 AM, peter dalgaard wrote:
> Also beware the traveling arsonist, Jenny Bryan:
> 
> https://www.tidyverse.org/articles/2017/12/workflow-vs-script/
> 
> 
> -pd
> 
>> On 2 Jul 2018, at 17:11 , Bert Gunter <bgunter.4567 using gmail.com> wrote:
>>
>> ... or perhaps
>>
>> rm( list = ls(all = TRUE))
>> ## see ?ls  for details.
>>
>> However, see ?Startup for how to start a R in a "clean" environment, e.g.
>> with the --no-restore option.
>>
>> Cheers,
>> 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 Mon, Jul 2, 2018 at 7:47 AM, Eric Berger <ericjberger using gmail.com> wrote:
>>
>>> If you want a "fresh" R session when you start to run the script you could
>>> consider putting as the first line
>>>
>>> rm(list=ls())
>>>
>>> This will remove objects from your environment (variables, functions, ..)
>>>
>>> HTH,
>>> Eric
>>>
>>>
>>> On Mon, Jul 2, 2018 at 5:34 PM, PIKAL Petr <petr.pikal using precheza.cz> wrote:
>>>
>>>> Hi
>>>>
>>>> Without code it is just fishing in murky waters. Could the problem you
>>>> face be that in each run you assingn the result to some object and if the
>>>> CSV is wrong your code fails but the object from previous run persists?
>>>>
>>>> If this is the case just initialize your objects in the beginning (e.g.
>>>> make them NULL at the beginning) and only if code delivers result the
>>> value
>>>> of the result is returned otherwise NULL is returned.
>>>>
>>>> Cheers
>>>> Petr
>>>>
>>>> Osobní údaje: Informace o zpracování a ochraně osobních údajů obchodních
>>>> partnerů PRECHEZA a.s. jsou zveřejněny na: https://www.precheza.cz/
>>>> zasady-ochrany-osobnich-udaju/ | Information about processing and
>>>> protection of business partner's personal data are available on website:
>>>> https://www.precheza.cz/en/personal-data-protection-principles/
>>>> Důvěrnost: Tento e-mail a jakékoliv k němu připojené dokumenty jsou
>>>> důvěrné a podléhají tomuto právně závaznému prohlášení o vyloučení
>>>> odpovědnosti: https://www.precheza.cz/01-dovetek/ | This email and any
>>>> documents attached to it may be confidential and are subject to the
>>> legally
>>>> binding disclaimer: https://www.precheza.cz/en/01-disclaimer/
>>>>
>>>>> -----Original Message-----
>>>>> From: R-help [mailto:r-help-bounces using r-project.org] On Behalf Of Morkus
>>>> via R-
>>>>> help
>>>>> Sent: Monday, July 2, 2018 2:02 PM
>>>>> To: r-help using r-project.org
>>>>> Subject: [R] R maintains old values
>>>>>
>>>>> Hello,
>>>>>
>>>>> I have a strange side-effect from executing R-scripts using R and
>>> RServe.
>>>>>
>>>>> I am executing an R-Script from a Java file using RServe in R. I also
>>>> have RStudio
>>>>> installed, but it's not running at the time. The R-script reads a CSV
>>>> file and does
>>>>> various statistical things. RServe enables me to run each line of the R
>>>> script
>>>>> using "eval()" line by line.
>>>>>
>>>>> All this works fine for a correctly-formatted CSV file. It's great.
>>>>>
>>>>> But, if the CSV file isn't correctly formatted, AND the last CSV file
>>>> did correctly
>>>>> get run, then, with the incorrect CSV as input, the output is what ran
>>>> last time.
>>>>> Somehow, the last correct run is persisted and returned if there is
>>> some
>>>>> problem with the current CSV input.
>>>>>
>>>>> This data persistence is maintained across reboots.
>>>>>
>>>>> I'm thus baffled how R is maintaining these old values, but more to the
>>>> point, I
>>>>> need to know how to clear these old values so if the CSV input is
>>>> incorrect, I get
>>>>> nothing back, not the old CSV values from a correctly formatted file.
>>>>>
>>>>> Hope this description is clear.
>>>>>
>>>>> Thanks in advance to all.
>>>>>
>>>>> - M
>>>>>
>>>>> Sent from [ProtonMail](https://protonmail.com), Swiss-based encrypted
>>>> email.
>>>>>      [[alternative HTML version deleted]]
>>>>>
>>>>> ______________________________________________
>>>>> R-help using 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 using 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.
>>>>
>>>
>>>        [[alternative HTML version deleted]]
>>>
>>> ______________________________________________
>>> R-help using 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.
>>>
>>
>> 	[[alternative HTML version deleted]]
>>
>> ______________________________________________
>> R-help using 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.
>




More information about the R-help mailing list