一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 1076|回复: 6
收起左侧

[统计--软件] R语言里面“=”和“<-”的区别,有效回答加米

[复制链接] |试试Instant~ |关注本帖
bryanjhy 发表于 2015-8-8 14:10:49 | 显示全部楼层 |阅读模式

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
本人新手,之前看书自学R,一开始觉得=和<-差不多,所以就偷个懒直接用=,然后今天发现一个神奇的error,如下 鏉ユ簮涓浜.涓夊垎鍦拌鍧.
ifelse(Owls$FoodTreatment=="Satiated", Owls$Nights=paste(Owls$Nest, "1", sep="_"), Owls$Nights=paste(Owls$Nest, "2", sep="_"))
Error: unexpected '=' in "ifelse(Owls$FoodTreatment=="Satiated", Owls$Nights="

然后改成
ifelse(Owls$FoodTreatment=="Satiated", Owls$Nights<-paste(Owls$Nest, "1", sep="_"), Owls$Nights<-paste(Owls$Nest, "2", sep="_"))
就出结果了,也就是把两个paste之前的=改成了<-,不知道为什么,新手求解答,有效回答加米,谢谢
chuck1212 发表于 2015-8-9 16:21:24 | 显示全部楼层
大多数情况下= 和 <- 应该是一样的,都可以用于赋值,但是 <- 更genral一点,=只能用在top level的赋值。
如果=写在function里面,是特别给function里面的parameter赋值,而不是其他一般的情况。

LZ这边的ifelse就是个function。
鏉ユ簮涓浜.涓夊垎鍦拌鍧.
不过,不知道可不可以避免在ifelse里面写=,比如写成? . 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
Owls$Nights =paste(Owls$Nest, ifelse(Owls$FoodTreatment=="Satiated", "1","2"),  sep="_")

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

 楼主| bryanjhy 发表于 2015-8-9 21:48:03 | 显示全部楼层
chuck1212 发表于 2015-8-9 16:21
大多数情况下= 和

能否解释一下啥叫top level
回复 支持 反对

使用道具 举报

chuck1212 发表于 2015-8-10 06:44:41 | 显示全部楼层
bryanjhy 发表于 2015-8-9 21:48
能否解释一下啥叫top level

参考一下这条Stack Overflow:

http://stackoverflow.com/questio ... ference-between-and
回复 支持 反对

使用道具 举报

杀G不成反被杀 发表于 2015-8-11 20:56:47 | 显示全部楼层
玩R,强烈建议关注谢益辉。
以下是谢对这个问题的看法:http://yihui.name/cn/2012/09/equal-and-arrow/

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

杀G不成反被杀 发表于 2015-8-11 20:57:14 | 显示全部楼层
玩R,强烈建议关注谢益辉。
以下是谢对这个问题的看法:http://yihui.name/cn/2012/09/equal-and-arrow/

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

scukid 发表于 2015-9-21 13:19:03 | 显示全部楼层
学长在维克森林这个月到现在感觉如何
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-4 22:52

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表