溫州網(wǎng)站建設(shè)服務(wù)電子商務(wù)網(wǎng)絡(luò)公司優(yōu)化seo深圳
前言
在生物信息學(xué)數(shù)據(jù)分析中,R語言是一個(gè)不可或缺的工具。為了提高R語言編程效率,合理設(shè)置快捷鍵顯得尤為重要。本文介紹在VSCode Windsurf Cursor 中一些實(shí)用的R語言快捷鍵設(shè)置,讓非 Rstudio 的 IDE 用起來得心應(yīng)手😑
操作種類
管道操作符
- 管道操作符:
%>%
,這是來自tidyverse包的經(jīng)典管道操作符,用于鏈?zhǔn)綌?shù)據(jù)處理,使代碼更清晰易讀。舉個(gè)例子:data %>% filter() %>% select()
- 新型管道操作符:
%<>%
,來自magrittr包的復(fù)合賦值管道操作符,可以同時(shí)完成管道操作和賦值。例如:data %<>% filter() %>% select()
賦值操作符
- 左箭頭賦值:
<-
,R語言中最常用的賦值方式 - 右箭頭賦值:
->
,反向賦值操作符
例子:x <- 1; 1 -> x
集合相關(guān)操作
- 成員判斷操作符:
%in%
,用于判斷元素是否存在于向量或列表中,例如:"gene1" %in% gene_list
其他
- RMarkdown相關(guān),插入R代碼塊,快速在Rmd文件中插入R代碼塊,
- R 選項(xiàng)設(shè)置快捷鍵,常用選項(xiàng)設(shè)置,快速設(shè)置R環(huán)境的常用選項(xiàng),比如:最大打印行數(shù):100,啟用httpgd圖形設(shè)備,繪圖設(shè)備為quartz等。
配置方法
所有快捷鍵都在R文件(.r)和RMarkdown文件(.rmd)中生效。快捷鍵設(shè)置可以根據(jù)個(gè)人習(xí)慣進(jìn)行自定義修改??梢钥焖購?Rstudio 向其他 IDE 遷移,這些設(shè)置將幫在進(jìn)行生物信息學(xué)分析時(shí)更高效地編寫R代碼
打開 VSCode Windsurf Cursor 等的用戶設(shè)置Json文件,添加:
[{"key": "ctrl+shift+m","command": "editor.action.insertSnippet","args": {"snippet": " %>% "},"when": "editorTextFocus && (editorLangId == 'r' | editorLangId == 'rmd')"},{"key": "alt+-","command": "type","args": {"text": " <- "},"when": "editorTextFocus && (editorLangId == 'r' | editorLangId == 'rmd')"},{"key": "alt+=","command": "type","args": {"text": " -> "},"when": "editorTextFocus && (editorLangId == 'r' | editorLangId == 'rmd')"},{"key": "alt+5","command": "editor.action.insertSnippet","args": {"snippet": " %in% "},"when": "editorTextFocus && (editorLangId == 'r' | editorLangId == 'rmd')"},{"key": "alt+i","command": "editor.action.insertSnippet","args": {"snippet": "```{r}\n$0\n```"},"when": "editorTextFocus && editorLangId == 'rmd'"},{"key": "ctrl+shift+,","command": "editor.action.insertSnippet","args": {"snippet": " %<>% "},"when": "editorTextFocus && (editorLangId == 'r' | editorLangId == 'rmd')"},{"key": "alt+o","command": "editor.action.insertSnippet","when": "editorTextFocus && (editorLangId == 'r' | editorLangId == 'rmd')","args": {"snippet": "options(\n max.print=100,\n vsc.use_httpgd=TRUE,\n device='quartz'\n)"}}]