R包经常会遇到各种版本不兼容的毛病,比如当前的版本相较于包,新了/旧了都是麻烦
而升级R软件呢,最麻烦的就是之前安装的包怎么办?
搜罗了以下几种方法:
 
方法1:
(1)直接安装新版本
(2)然后复制旧版本的library中的文件夹到新版本的library文件夹下,粘贴。
         如果中间跳出有重名的,就不覆盖(基础包是需要最新的)。
(3)打开新版的R,输入:
  1. update.packages()
默默等待更新即可
(不过我其实不建议这种方式,他会不断的跳出来,让你选择y/n/c 是/否/取消)
直接选择程序包——更新程序包,应该就可以了吧?
 
方法2
使用installr包
所以,还没开始,似乎结局已经注定
如果是这样,我不知道其意义何在呢?
不过呢,按照其他参考资料而言,应该还是很简便的
(参考资料的发布时间最在的在2014,晚一点的也在2015,看来这个包也是经过了不少改动啊)
 
 
方法3
在旧版本下的控制输入:
  1. olib <- installed.packages()[,"Package"]
  2.  
  3. save(olib, file="oldRpackages.txt",ascii=T)
也就是,在旧版本下,读入了所有已安装的扩展包
我将后缀名保存为txt,并设置ascii参数为T,是为了能打开,打开能识别编码。恩,最好使用editplus打开,不然直接用txt,格式看起来混乱。
上述语句要在卸载旧版本之前运行,然后,上述语句运行完,会在当前的工作空间(getwd()查看)文件下生成一个oldRpackages.txt文件
安装新的R,然后在新的R中输入:
  1. > load("oldRpackages")
  2. > chooseCRANmirror() #我先选择设置镜像,才出现此代码
  3. > tobeinstalled <- setdiff(olib, installed.packages()[,"Package"])
  4. > biocLite(tobeinstalled)
  5.  
  6. 错误:没有"biocLite"这个函数
 使用??biocLite,也是not fund
但事实上不是这样的,输入:(这是因为,他们所用的镜像,是生物信息自己的镜像,会加载包)
  1. load("oldRpackages")
  2. source("http://bioconductor.org/biocLite.R")
  3.  
    1. 试开URL’https://bioconductor.org/packages/3.3/bioc/bin/windows/contrib/3.3/BiocInstaller_1.22.1.zip'
    2. Content type 'application/zip' length 58128 bytes (56 KB)
    3. downloaded 56 KB
    4. The downloaded binary packages are in
    5. C:\Users\xuan\AppData\Local\Temp\Rtmp6dKreM\downloaded_packages
    6. Bioconductor version 3.3 (BiocInstaller
    7. 1.22.1), ?biocLite for help
     
  4.  
  5. tobeinstalled <- setdiff(olib, installed.packages()[,"Package"])
  6. biocLite(tobeinstalled)
  7.  
    1. BioC_mirror: https://bioconductor.org
    2. Using Bioconductor 3.3 (BiocInstaller 1.22.1), R 3.3.0
    3. (2016-05-03).
    4. Old packages: 'Rcpp', 'survival'
     
  8. Update all/some/none?[a/s/n]: a(自己输入选择)
报错了........
(作者还有其他关于R的作品,蛮有意思http://www.calyx.biz/r-tips--r2521624039
 
综上所述,我觉得,在方法2可用的情况下,可以使用2 ,否则,我还是更愿意使用方法1.
 
卸载,进入安装文件,找到unins000.exe
卸载完后,library文件夹还会残留下来,但是,此时残留的仅仅是扩展包,其他的核心基础包,都木有啦。
 
安装:
(我手贱,一开始自己选了Plain text,结果帮助文档是在一个控制台一样的窗口输出的,不方便啊,无法缩放,窗口切换也麻烦)
 
 

R的卸载和更新安装的更多相关文章

  1. android86 监听SD卡状态,勒索软件,监听应用的安装、卸载、更新,无序广播有序广播

    * 添加权限 <uses-permission android:name="android.permission.RECEIVE_SMS"/> * 4.0以后广播接收者 ...

  2. Android apk的安装、卸载、更新升级(通过Eclipse实现静默安装)

    一.通过Intent消息机制发送消息,调用系统应用进行,实现apk的安装/卸载 . (1) 调用系统的安装应用,让系统自动进行apk的安装 String fileName = "/data/ ...

  3. python 学习笔记_1 pip安装、卸载、更新包相关操作及数据类型学习

    '''prepare_1 pip安装.卸载.更新组件type 各数据类型''' py -3 -m pip py -3 -m pip listpy -3 -m pip show nosepy -3 -m ...

  4. Linux CentOS 6.5 卸载、tar安装MySQL

    卸载系统自带MySQL 1. 查看系统当前是否安装有MySQL rpm -qa|grep -i mysql 2. 卸载当前版本的MySQL yum remove mysql mysql-server ...

  5. ubuntu 上更新安装 openoffice.org3的过程

    方法一:手动安装1首先在“应用成程序--添加/删除”里卸载openoffice 2.4,可能openoffice.org 2.4 Draw因为关联而无法卸载,忽略,卸载其他几项.然后在中文官方网上下载 ...

  6. c#自动更新+安装程序的制作 (转)

    c#自动更新+安装程序的制作 (转)  http://blog.csdn.net/myhuli120/article/details/6927588 一.自动更新的实现 让客户端实现自动更新,通常做法 ...

  7. c#自动更新+安装程序的制作

    一.自动更新的实现 让客户端实现自动更新,通常做法是在客户端部署一个单独的自动更新程序.主程序启动后,访问服务端,检查配置文件是否有更新版本,有更新版本就启动更新程序,由更新负责下载更新版本,并更新客 ...

  8. deepin卸载mysql并安装设置mysql5.7

    mysql完全卸载以及安全安装 完全卸载 sudo apt purge mysql-* sudo rm -rf /etc/mysql/ /var/lib/mysql sudo apt autoremo ...

  9. sql sever和mysql 卸载及oracle安装

    sql sever和mysql的卸载及Oracle安装 目的:本人健忘,以后难免会重装系统啥的,软件卸了装是常有的事,特此写此详细教程,一是方便自己以后重装的时候可以看看:二是如果有某位初学者有幸光临 ...

随机推荐

  1. 《小白的CFD之旅》招募写手

    <小白的CFD之旅>系列招募写手. 由于工作繁忙,<小白的CFD之旅>系列更新缓慢,现招募志愿者写手.这是一个分享平台,欢迎各位愿意分享自己CFD学习经历的朋友们. <小 ...

  2. 用CSS开启硬件加速来提高网站性能

    国外一篇文章,有点意思,转载过来,准备尝试下~ 中文地址:http://www.cnblogs.com/rubylouvre/p/3471490.html 原文地址:http://blog.teamt ...

  3. UVALive 4870 Roller Coaster --01背包

    题意:过山车有n个区域,一个人有两个值F,D,在每个区域有两种选择: 1.睁眼: F += f[i], D += d[i] 2.闭眼: F = F ,     D -= K 问在D小于等于一定限度的时 ...

  4. [zz]如何在C语言程序中处理汉字

    学习过C语言的人也许有时会遇到这样一个问题:如何用变量存储汉字以及对这些变量进行操作.目前许多C语言参考书中都没涉及到这个问题,程序中多为处理英文变量和英文字符串,涉及到汉字的情况也大都是在print ...

  5. 基于spring-boot的rest微服务框架

    周末在家研究spring-boot,参考github上的一些开源项目,整了一个rest微服务框架,取之于民,用之于民,在github上开源了,地址如下: https://github.com/yjmy ...

  6. 为什么Java不支持多继承?

    没想过面试的时候,会遇到语言设计上的问题.现场答得并不好因为一直没思考过,经过了点搜索,渐渐有点思路. 1. 避免“钻石型”多继承问题:有两个类B和C继承自A.假设B和C都继承了A的方法并且进行了覆盖 ...

  7. [CareerCup] 18.1 Add Two Numbers 两数相加

    18.1 Write a function that adds two numbers. You should not use + or any arithmetic operators. 这道题让我 ...

  8. RapidJSON 代码剖析(二):使用 SSE4.2 优化字符串扫描

    现在的 CPU 都提供了单指令流多数据流(single instruction multiple data, SIMD)指令集.最常见的是用于大量的浮点数计算,但其实也可以用在文字处理方面. 其中,S ...

  9. c#如何实现一个线程暂停,等待用户输入文本后继续运行?

    using System; using System.Text; using System.Windows.Forms; using System.Threading; namespace Windo ...

  10. java 8

    java 8 发布已经有一段时间了,然而很多新特性被拒之门外,让人敬而生畏,但是,时代在进步,技术在发展,要追随时代的脚步就要跟随新的潮流.总结下java 8 中常用的小功能点,学如逆水行舟,不进则退 ...