作者gsuper (统计的巴比伦塔)
看板Statistics
标题Re: [R程式] 写出含文字的函数?
时间Sat Mar 5 14:58:11 2011
程式
============================================================
f <- function(input)
{ formula <- "log2(input)+1/15"
if(is.character(input)) {
gsub("input",input,formula) }
else if(is.numeric(input)) {
eval(parse(text=formula)) }
else { return("资料格式不正确") }
}
#######
结果
#######
a <- 1
b <- "x"
c <- "y"
d <- as.factor(10)
SEE <- list(a=f(a),b=f(b),c=f(c),d=f(d))
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.239.247
1F:推 diplazium:g大好强~大推! 03/05 17:11
2F:推 nago:谢谢g大!! 我对变数宣告真的不是很熟~~我会参考12483那篇的 03/05 23:56
3F:→ nago:再次由衷感谢!!~~~XD 03/05 23:56
4F:→ gsuper:eval 那段真的很强 , 不过是从 click 大那边抄过来的 03/06 05:17
5F:→ clickhere:gsub在这边可能会有问题.除非"input"字串唯一. 03/06 14:17
6F:→ clickhere:help("substitute") and help("expression") 03/06 14:18
7F:→ clickhere:应可以省略 is.character and is.numeric 03/06 14:19
8F:→ clickhere:substitute(expression(a + b), list(a = "AA")) 03/06 14:21
9F:→ clickhere:substitute(a + b, list(a = "AA")) 03/06 14:21
10F:→ clickhere:click也是抄来的. 03/06 14:23
11F:→ clickhere:比如说function name不叫log2(), 而是input()... 03/06 14:28
※ gsuper:转录至看板 R_Language 03/30 20:35