如何在 Windows 上卸载R
卸载 R 前保留脚本、数据集、已保存的工作区和个人包库,移除一个 R 版本,不应顺带删除另一版本、RStudio 或项目目录。
先保存数据,再退出程序
退出 R 前,在控制台运行 getwd() 和 .libPaths(),找到当前工作目录和包库,拷出要留的项目文件并记下包依赖,再关闭 R 和使用这一版本的 IDE 会话。位于该版本程序目录里的包库可能随版本卸载,先检查再操作。
卸载对应的安装包
Windows 11 打开「设置 › 应用 › 已安装的应用」,找到 R 后选择卸载,Windows 10 对应的是「设置 › 应用 › 应用和功能」。先让自带卸载器走完,不提前删除程序目录。如果是 winget 安装,先确认准确的包名:
winget list --id RProject.R --exact
查询正常完成,并且显示的确实是准备移除的安装,再执行:
winget uninstall --id RProject.R --exact
这会调用该安装包登记的卸载方式,便携包则由包管理器移除。命令报错或没有匹配条目,都不能单独证明软件已经不在,还要核对 Windows 应用列表和最初的安装方式。卸载器要求确认或重启时,先保存其他工作再处理,命令行为见微软的 winget 卸载文档。
数据与独立组件分别处理
下面这些位置或组件要单独判断,看到目录还在,不代表里面的内容可以直接删除。
| 位置或组件 | 保留或检查什么 |
|---|---|
getwd() |
项目工作目录,保留里面的脚本、数据和工作区文件。 |
.libPaths() |
当前 R 会话真正使用的包库目录,保留个人包库,区分随版本安装的目录。 |
参考 R 官方资料。
检查卸载结果
winget list --id RProject.R --exact
包查询正常完成且没有匹配行,才说明没找到该包登记,有匹配行就还在,报错则结果未知。主动保留的数据留着即可,再用任务管理器核对进程的可执行文件是否属于这次安装,先区分另一版本或独立组件,再决定是否处理。
Mole 会列出什么
后续清理时,R 的程序目录和快捷方式已经被移除,Mole 删除了属于 R 的使用记录,没有把 Windows BITS 服务的变化当作 R 残留删除。
这次检查覆盖了什么
测试打开了 Windows Inno 全机安装的 R 图形界面并完成卸载,没有列出适用更新,未执行升级,也没有验证恢复个人包库或复现所有分析环境。
本次测试使用 Mole 开发构建,未逐一验证正式发布的各个版本。
