Re: [R] How to use curve() function without using x as the variable name inside expression?

2015-01-31 Thread Ben Tupper
Hi Philippe, Ah! Thanks for pointing out the pesky ifelse() issue. I have only recently been learning (the hard way) that ifelse() is not a tool for the uninformed like me, but it is ever so tempting! I would like to offer another way to speed things up. findInterval() can be quite fast,

Re: [R] How to use curve() function without using x as the variable name inside expression?

2015-01-31 Thread Philippe Grosjean
Also note that ifelse() should be avoided as much as possible. To define a piecewise function you can use this trick: func - function (x, min, max) 1/(max-min) * (x = min x = max) The performances are much better. This has no impact here, but it is a good habit to take in case you manipulate

Re: [R] How to use curve() function without using x as the variable name inside expression?

2015-01-31 Thread peter dalgaard
On 31 Jan 2015, at 09:39 , Rolf Turner r.tur...@auckland.ac.nz wrote: On 31/01/15 21:10, C W wrote: Hi Bill, One quick question. What if I wanted to use curve() for a uniform distribution? Say, unif(0.5, 1.3), 0 elsewhere. My R code: func - function(min, max){ 1 / (max - min)

Re: [R] How to use curve() function without using x as the variable name inside expression?

2015-01-31 Thread C W
Hi Bill, One quick question. What if I wanted to use curve() for a uniform distribution? Say, unif(0.5, 1.3), 0 elsewhere. My R code: func - function(min, max){ 1 / (max - min) } curve(func(min = 0.5, max = 1.3), from = 0, to = 2) curve() wants an expression, but I have a constant. And I

Re: [R] How to use curve() function without using x as the variable name inside expression?

2015-01-31 Thread Rolf Turner
On 31/01/15 21:10, C W wrote: Hi Bill, One quick question. What if I wanted to use curve() for a uniform distribution? Say, unif(0.5, 1.3), 0 elsewhere. My R code: func - function(min, max){ 1 / (max - min) } curve(func(min = 0.5, max = 1.3), from = 0, to = 2) curve() wants an

Re: [R] How to use curve() function without using x as the variable name inside expression?

2015-01-29 Thread Rui Barradas
Hello, The following will work, but I don't know if it's what you want. func2 will get x and y from the global environment. func2 - function(mu){ x + y + mu ^ 2 } curve(func2, from = 0, to = 10) Hope this helps, Rui Barradas Em 29-01-2015 21:02, C W escreveu: Hi all, I want to graph

[R] How to use curve() function without using x as the variable name inside expression?

2015-01-29 Thread C W
Hi all, I want to graph a curve as a function of mu, not x. Here's the R code: x - rnorm(10) y - rnorm(10) func - function(x, y, mu){ x + y + mu ^ 2 } curve(f = func(x = x, y = y, mu), from = 0, to = 10) I know I can change variable mu to x, but is there a way to tell R that mu is the

Re: [R] How to use curve() function without using x as the variable name inside expression?

2015-01-29 Thread C W
Hi Rui, Thank you for your help. That works for now, but eventually, I need to be pass in x and y. Is there a way to tell the curve() function, x is a fix vector, mu is a variable! Thanks, Mike On Thu, Jan 29, 2015 at 5:25 PM, Rui Barradas ruipbarra...@sapo.pt wrote: Hello, The following

Re: [R] How to use curve() function without using x as the variable name inside expression?

2015-01-29 Thread William Dunlap
Does help(curve) talk about its 'xname' argument? Try curve(10*foofoo, from=0, to=17, xname=foofoo) You will have to modify your function, since curve() will call it once with a long vector for the independent variable and func(rnorm(10), rnorm(10), mu=seq(0,5,len=501)) won't work right.

Re: [R] How to use curve() function without using x as the variable name inside expression?

2015-01-29 Thread C W
Hi Bill, You solved by problem. For some reason, I thought xname was only referring to name of the x-axis. I remember last time I fixed it, it was something about xname, couldn't get it right this time. Thanks! Saved me hours from frustration. Mike On Thu, Jan 29, 2015 at 9:04 PM, William