新版Rstudio,几个有助于高效编程的小技巧

2023-11-28 00:50

本文主要是介绍新版Rstudio,几个有助于高效编程的小技巧,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

众所周知,月初的时候RStudio发布了1.0版本,引起了广大用户的关注与感慨,其中的多项重大亮点,大家都已经了解甚至试用了。


除了notebook这种大尺度的逆天功能,RStudio作为一个IDE,还拥有众多或许不为太多人知的小细节。但正是这一系列小心思,默默提升了广大分析师们的工作效率。


本文就是跟大家介绍其中的几个小技巧。全文内容照例由谷歌翻译,豹哥不负责审核。


1.可分离的窗格

用户可以将数据窗格和代码窗格从主界面中拆分出来,以减少在窗格之间的频繁切换。尤其是如果你有多个显示器,可以将不同的窗格拖动到不同的显示器窗口,逼格尽显。具体怎么用?直接按住窗格的名字来拖拽试试,更方便的是窗格的名字下方有个小图标,猛击它就可以直接拆分与还原。




2.历史命令检索

与很多命令工具一样,在R的控制台里面按向上箭头,可以召唤出之前使用过的命令语句,按一次出一句,如果命令太久远,真的会按到手酸。其实只要略加修改,使用Ctrl+↑,就可以直接显示出历史命令的列表,然后从中选择需要的语句来执行。更贴心的是,RStudio会基于当前控制台中已经输入的起始字符来自动筛选出符合条件的候选命令,再次简化了操作步骤。




3.历史记录窗格

历史记录窗格中显示了历史上执行过的命令列表(并且可以对其进行搜索)。选中的命令段可以直接写入控制台或代码窗格。从此再也不用从控制台中复制命令再粘贴到代码文件中啦。




4.批量重命名

顾名思义,就是同一个变量名在代码的很多位置重复出现,如果写着写着发现需要换个更合适的名字,就不用一个一个去编辑了(也不用Ctrl+F然后再按好多次回车键),而只需要选中需要修改的变量,然后在菜单栏中依次点击Code -> Rename in Scope(默认快捷键是Ctrl+Alt+Shift+M),就可以批量地进行重命名了。这个工具考虑了上下文,因此把变量a1修改为baoge并不会把变量a11误杀为baoge1。




5.notebook里的画廊视图和卫星视图

听起来很神秘?这是当notebook中的代码块产出多幅图形时会使用的展现模式。默认会使用画廊模式(注意不是发廊),即一行缩略图,在缩略图之间切换以查看大图。画廊可以再扩展成一个新的卫星窗口,以便进行更细致的浏览。(这个功能其实挺符合直觉的,感知不大强烈。)




6.代码大纲

如果代码很长,要滚动浏览就会有点花时间了。RStudio针对代码提供了一个大纲视图,适用于notebook的Rmd以及传统的R脚本。在代码窗格菜单栏的最右边按钮点击就可以展开大纲视图(或者使用快捷键Ctrl+Shift+O)。在大纲视图中点击分段标题,就可以导航到相应位置。如果是notebook,Rmd里面的段落标题就定义了大纲的分段;而对于传统的R脚本,则需要用段落注释来定义分段(在菜单栏中依次点击Code -> Insert Section,快捷键是Ctrl+Shift+R)。




7.预设代码块

有些常用代码已经成为了模板,可以利用预设代码块进行快捷的插入(就像预设的短信回复模板一样)。例如,输入fun,按Tab键,就会插入一段用于定义函数的代码框架。此时再按Tab键,还可以依次修改其中的关键元素。RStudio内置的代码模板已经挺多了,当然用户也可以自定义一些个性化的模板。




8.文件导航

大家都知道RStudio里通过Tab键就可以召唤出对函数和参数进行补全的各种选项。其实Tab键还可以帮助列出文件名,咱们就不用手动敲入那些冗长的文件路径了。这个技巧用起来也很自然,在一对双引号中间按下Tab键,就会打开一个简易的文件搜寻下拉框。


动图

9.查看函数的定义

想查看一个函数的内部结构,只要将鼠标点到这个函数上,敲击F2,就会跳转到定义该函数的语句。如果是某个附加包里的函数,则会打开一个新的窗格,展示该函数的定义。

这篇关于新版Rstudio,几个有助于高效编程的小技巧的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/428779

相关文章

Java字符串操作技巧之语法、示例与应用场景分析

《Java字符串操作技巧之语法、示例与应用场景分析》在Java算法题和日常开发中,字符串处理是必备的核心技能,本文全面梳理Java中字符串的常用操作语法,结合代码示例、应用场景和避坑指南,可快速掌握字... 目录引言1. 基础操作1.1 创建字符串1.2 获取长度1.3 访问字符2. 字符串处理2.1 子字

Java Optional的使用技巧与最佳实践

《JavaOptional的使用技巧与最佳实践》在Java中,Optional是用于优雅处理null的容器类,其核心目标是显式提醒开发者处理空值场景,避免NullPointerExce... 目录一、Optional 的核心用途二、使用技巧与最佳实践三、常见误区与反模式四、替代方案与扩展五、总结在 Java

shell编程之函数与数组的使用详解

《shell编程之函数与数组的使用详解》:本文主要介绍shell编程之函数与数组的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录shell函数函数的用法俩个数求和系统资源监控并报警函数函数变量的作用范围函数的参数递归函数shell数组获取数组的长度读取某下的

如何高效移除C++关联容器中的元素

《如何高效移除C++关联容器中的元素》关联容器和顺序容器有着很大不同,关联容器中的元素是按照关键字来保存和访问的,而顺序容器中的元素是按它们在容器中的位置来顺序保存和访问的,本文介绍了如何高效移除C+... 目录一、简介二、移除给定位置的元素三、移除与特定键值等价的元素四、移除满足特android定条件的元

基于Python实现高效PPT转图片工具

《基于Python实现高效PPT转图片工具》在日常工作中,PPT是我们常用的演示工具,但有时候我们需要将PPT的内容提取为图片格式以便于展示或保存,所以本文将用Python实现PPT转PNG工具,希望... 目录1. 概述2. 功能使用2.1 安装依赖2.2 使用步骤2.3 代码实现2.4 GUI界面3.效

Python通过模块化开发优化代码的技巧分享

《Python通过模块化开发优化代码的技巧分享》模块化开发就是把代码拆成一个个“零件”,该封装封装,该拆分拆分,下面小编就来和大家简单聊聊python如何用模块化开发进行代码优化吧... 目录什么是模块化开发如何拆分代码改进版:拆分成模块让模块更强大:使用 __init__.py你一定会遇到的问题模www.

Java图片压缩三种高效压缩方案详细解析

《Java图片压缩三种高效压缩方案详细解析》图片压缩通常涉及减少图片的尺寸缩放、调整图片的质量(针对JPEG、PNG等)、使用特定的算法来减少图片的数据量等,:本文主要介绍Java图片压缩三种高效... 目录一、基于OpenCV的智能尺寸压缩技术亮点:适用场景:二、JPEG质量参数压缩关键技术:压缩效果对比

揭秘Python Socket网络编程的7种硬核用法

《揭秘PythonSocket网络编程的7种硬核用法》Socket不仅能做聊天室,还能干一大堆硬核操作,这篇文章就带大家看看Python网络编程的7种超实用玩法,感兴趣的小伙伴可以跟随小编一起... 目录1.端口扫描器:探测开放端口2.简易 HTTP 服务器:10 秒搭个网页3.局域网游戏:多人联机对战4.

C#使用SQLite进行大数据量高效处理的代码示例

《C#使用SQLite进行大数据量高效处理的代码示例》在软件开发中,高效处理大数据量是一个常见且具有挑战性的任务,SQLite因其零配置、嵌入式、跨平台的特性,成为许多开发者的首选数据库,本文将深入探... 目录前言准备工作数据实体核心技术批量插入:从乌龟到猎豹的蜕变分页查询:加载百万数据异步处理:拒绝界面

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis