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. linux下使用denyhosts防止ssh暴力破解

    1.DenyHosts介绍 DenyHosts是Python语言写的一个程序,它会分析sshd的日志文件(/var/log/secure),当发现重 复的攻击时就会记录IP到/etc/hosts.de ...

  2. FineReport中如何进行Informix数据库连接

    报表开发工具Finereport中,对于Informix数据库,定义数据连接处进行如下配置: 数据库:Others 驱动器:com.informix.jdbc.IfxDriver URL: jdbc: ...

  3. makefile 学习笔记

    1/ 编写简单makefile test_out: test.o g++ test.o -o test_out test.o: test.cpp test.h g++ -c test.cpp test ...

  4. Java正则抓取email

    实现思路 1.使用Java.net.URL对象,绑定网络上某一个网页的地址 2.通过java.net.URL对象的openConnection()方法获得一个HttpConnection对象 3.通过 ...

  5. JS数组去重比较

    数组去重复是一个常见的需求,我们暂时考虑同类型的数组去重复.主要是理清思路和考虑执行性能. for循环删除后面重复的 var uniqueFor = function(arr) { for (var ...

  6. Error: Could not find the required version of the Java(TM) 2 Runtime Environment in'(null)'.

    今天拿到一台新机器,搭一下开发环境,安装个JDK是个很基本的事情,从Orale的网站上下了个安装,但是一直出下面的错: 我信了你的邪,Google了一圈,有人说是可能文件下载有问题,重新下载安装就可以 ...

  7. HTML5的postMessage使用记要

    HTML5提出了一个新的用来跨域传值的方法,即postMessage(这个名字太通俗了所以你最好看看是不是自己写过一个同名的把它覆盖了).幸运的是IE8就开始支持了. 我们假设有两个网站,1.com与 ...

  8. phpstorm 激活服务器

    phpstorm 激活服务器 http://jetbrains.tencent.click/ (2016-09-19 可用) webstorm 激活服务器 http://owo.help(2016-0 ...

  9. Android BLE 蓝牙编程(四)

    接上篇,我们已经实现了短震,长震的功能了- 现在我们需要实现点击后一直震动的功能 开始我的想法是再循环中不断执行write方法,然而这个办法行不通. 系统会报错. 那要如何实现这个想法呢?其实很简单, ...

  10. TAC 坦克队

    The Art of Code 团队成员 组长:   031402330吴宇轩 组员:   031402509胡泽善   031402224彭 巍   031402230张建明   031402508 ...