使用attach()函数时数据读取错误

 在省略数据框名简化程序方面,使用attach()是非常方便的。但有的时在使用attach()时,容易遇到因变量名重复而导致提取数据错误的情况。函数attach()可将数据框添加到R的搜索路径中,这样在定位数据框某个变量的时候,可以省略数据框名,简化程序。与此对应,函数detach()是将数据框从搜索路径中移除。

这里写图片描述
而当当前的工作空间中存在名称相同的对象时,attach()函数的使用就会收到限制,可能导致最后数据框数据读取错误。当前工作空间出现名称相同的对象,可能是因为保存了之前的工作空间,或者是当前的工作空间定义了名称相同的对象。
这里写图片描述
这里写图片描述
在关闭R时,如果保存了此次工作空间,那么在下次打开R时会显示“原来保存的工作空间已还原”,这意味着现在的工作空间里包含了上次工作空间里的所有对象(可使用ls()来查看保存看工作空间中的对象名称),这时再使用attach()函数可能就会出现对象名称重复,读取数据失败的情况。继续上面那个例子,如果上一个工作空间已经给x赋值了,并且保存了工作空间,那么下次再打开R,导入一个新的数据框并使用attach()函数时可能就会出现数据读取错误的情况。下面的程序导入了一个含有x的表格,这时使用attach()来读取x的值时,就会出错。
这里写图片描述
遇到这种情况,只需将R工作目录中保存的工作空间删除即可,再运行一次代码即可。
这里写图片描述

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值