Displaying 20 results from an estimated 40000 matches similar to: "Finding the environment of a promise"
2012 Oct 08
4
Capturing environment associated with a promise
Hi all,
It's possible to capture the expression associated with a promise
(using substitute). Is there any way to capture the environment
associated with a promise? Similarly, is there any way to tell if
something is a promise without accidentally evaluating it?
Thanks!
Hadley
--
RStudio / Rice University
http://had.co.nz/
2011 May 02
2
Using substitute to access the expression related to a promise
Hi all,
The help for delayedAssign suggests that you can use substitute to
access the expression associated with a promise, and the help for
substitute says: "If it is a promise object, i.e., a formal argument
to a function or explicitly created using ?delayedAssign()?, the
expression slot of the promise replaces the symbol.
But this doesn't seem to work:
> a <- 1
> b <- 2
2016 Mar 01
2
Data frame printing buglet when multiple empty column names
This is admittedly minor, and you shouldn't have repeated names in a
data frame anyway, but:
df <- data.frame(1:3, 1:3, 1:3)
# Ok
setNames(df, c("x", "y", ""))
# Not ok
setNames(df, c("x", "", ""))
Hadley
--
http://hadley.nz
2017 Mar 19
3
RFC: (in-principle) native unquoting for standard evaluation
Would this return a quosure? (i.e. a single sided formula that captures
both expression and environment). That's the data structure we've adopted
in tidyeval as it already has some built in support.
Hadley
On Friday, March 17, 2017, Michael Lawrence <lawrence.michael at gene.com>
wrote:
> Interesting idea. Lazy and non-standard evaluation is going to happen; the
> language
2011 Jun 13
3
Detecting development environment
Hi all,
Is there a straight-forward, cross-platform way of determining if a
user has all the tools needed to develop R packages (i.e. gcc etc)?
It doesn't need to be 100%, but should give a rough idea. One idea I
had was simply to see if system("R CMD install --help") worked.
Hadley
--
Assistant Professor / Dobelman Family Junior Chair
Department of Statistics / Rice University
2009 Sep 03
2
clearNames and unname
Just noticed these two functions (clearNames is stats and unname in
base) that do the same thing.
Hadley
--
http://had.co.nz/
2015 Oct 13
1
A where() functions that does what exists() does but return the environment when object lives?
On Tue, Oct 13, 2015 at 4:43 PM, Hadley Wickham <h.wickham at gmail.com> wrote:
> Seems easy enough to write yourself:
>
> where <- function(x, env = parent.frame()) {
> if (identical(env, emptyenv()))
> return(NULL)
> if (exists(x, envir = env, inherits = FALSE))
> return(env)
> where(x, parent.env(env))
> }
>
> sample2 <-
2015 Jan 26
2
Inspect a "delayed" assigned whose value throws an error?
On Mon, Jan 26, 2015 at 12:24 PM, Hadley Wickham <h.wickham at gmail.com> wrote:
> If it was any other environment than the global, you could use substitute:
>
> e <- new.env()
> delayedAssign("foo", stop("Hey!"), assign.env = e)
> substitute(foo, e)
>
> delayedAssign("foo", stop("Hey!"))
> substitute(foo)
Hmm... interesting
2014 Feb 11
1
getting environment from "top" promise
Hi all,
It seems that there is a use case for obtaining the environment for the
"top" promise. By "top", I mean following the promise chain up the call
stack until hitting a non-promise.
S4 data containers often mimic the API of base R data structures. This
means writing S4 methods for functions that quote their arguments, like
with() and subset(). The methods package
2010 Feb 08
5
Fast way to determine number of lines in a file
Hi all,
Is there a fast way to determine the number of lines in a file? I'm
looking for something like count.lines analogous to count.fields.
Hadley
--
http://had.co.nz/
2010 Oct 08
2
What do you call the value that represents a missing argument?
Hi all,
What's the official name for the value that represents a missing argument?
e.g.
formals(plot)$x
str(formals(plot)$x)
deparse(formals(plot)$x)
is.symbol(formals(plot)$x)
What's the correct way to create an object like this? (for example if
you are manipulating the formals of a function to add an argument with
no default value, as in http://stackoverflow.com/questions/3892580/).
2011 Oct 18
9
readRDS and saveRDS
Hi all,
Is there any chance that readRDS and saveRDS might one day become
read.rds and write.rds? That would make them more consistent with the
other reading and writing functions.
Hadley
--
Assistant Professor / Dobelman Family Junior Chair
Department of Statistics / Rice University
http://had.co.nz/
2009 Jun 15
2
[OT] VBA to save excel as csv
Hi all,
This is a little off-topic, but it is on the general topic of getting
data in R. I'm looking for a excel macro / vba script that will
export all spreadsheets in a directory (with one file per tab) into
csv. Does anyone have anything like this?
Thanks,
Hadley
--
http://had.co.nz/
2013 Apr 03
1
Documentation error in subsitute
Hi all,
The documentation for substitute currently reads:
Substitution takes place by examining each component of the parse
tree as follows: If it is not a bound symbol in ?env?, it is
unchanged. If it is a promise object, i.e., a formal argument to
a function or explicitly created using ?delayedAssign()?, the
expression slot of the promise replaces the symbol. If it is an
ordinary variable,
2011 May 04
4
Recursive objects
Hi all,
Does anyone have a comprehensive list of recursive-type objects in R?
is.recursive defines them as by exclusion: "most types of objects are
regarded as recursive, except for vector types, ?NULL? and symbols
(as given by ?as.name?)." I think this that means recursive objects
are:
* lists
* pairlists
* calls
* expressions
Did I miss anything?
Hadley
--
Assistant
2011 Dec 31
4
Base function for flipping matrices
Hi all,
Are there base functions that do the equivalent of this?
fliptb <- function(x) x[nrow(x):1, ]
fliplr <- function(x) x[, nrow(x):1]
Obviously not hard to implement (although it needs some more checks),
just wondering if it had already been implemented.
Hadley
--
Assistant Professor / Dobelman Family Junior Chair
Department of Statistics / Rice University
http://had.co.nz/
2010 Aug 24
2
Comparing/diffing strings
Hi all,
all.equal is generally very useful when you want to find the
differences between two objects. It breaks down however, when you
have two long strings to compare:
> all.equal(a, b)
[1] "1 string mismatch"
Does any one know of any good text diffing tools implemented in R?
Thanks,
Hadley
--
Assistant Professor / Dobelman Family Junior Chair
Department of Statistics / Rice
2011 Sep 21
3
Quelplot
Hi all,
Does anyone have an R implementation of the queplot (K.?M. Goldberg
and B.?Iglewicz. Bivariate extensions of the boxplot. Technometrics,
34(3):pp. 307?320, 1992)? I'm struggling with the estimation of the
asymmetry parameters.
Hadley
--
Assistant Professor / Dobelman Family Junior Chair
Department of Statistics / Rice University
http://had.co.nz/
2006 Sep 29
2
Warning: a final empty element has been omitted
How can I suppress this warning?
> options(warn = -10)
> list(1,2,3,)
Warning: a final empty element has been omitted
the part of the args list of 'list' being evaluated was:
(1, 2, 3, )
[[1]]
[1] 1
[[2]]
[1] 2
[[3]]
[1] 3
> suppressWarnings(list(1,))
Warning: a final empty element has been omitted
the part of the args list of 'list' being evaluated was:
(1, )
2009 Nov 13
3
Escaping regular expressions
Hi all,
Is there a method for escaping strings to be used regular expressions?
i.e. if I have a user supplied string that I'd like to use as a fixed
component is there a method that will turn (e.g.) ".$^" into
"\\.\\$\\^" ?
Thanks,
Hadley
--
http://had.co.nz/