mirror of
				https://github.com/amix/vimrc
				synced 2025-10-31 06:33:35 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			192 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			192 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| priority -20
 | |
| 
 | |
| global !p
 | |
| import os
 | |
| from vimsnippets import complete
 | |
| 
 | |
| FIELD_TYPES = [
 | |
| 'character',
 | |
| 'data.frame',
 | |
| 'integer',
 | |
| 'list',
 | |
| 'logical',
 | |
| 'matrix',
 | |
| 'numeric',
 | |
| 'vector']
 | |
| endglobal
 | |
| 
 | |
| snippet #! "#!/usr/bin/env Rscript" b
 | |
| #!/usr/bin/env Rscript
 | |
| $0
 | |
| endsnippet
 | |
| 
 | |
| snippet setwd "Set workingdir" b
 | |
| setwd("${1:`!p snip.rv = os.getcwd()`}")
 | |
| endsnippet
 | |
| 
 | |
| snippet as "Apply type on variable" w
 | |
| as.$1`!p snip.rv = complete(t[1], FIELD_TYPES)`($2${VISUAL})
 | |
| endsnippet
 | |
| 
 | |
| snippet is "Test type on variable" w
 | |
| is.$1`!p snip.rv = complete(t[1], FIELD_TYPES)`($2${VISUAL})
 | |
| endsnippet
 | |
| 
 | |
| snippet dl "Download and install a package" b
 | |
| download.file("${1:${VISUAL:url to package}}", destfile = "${2:${1/.*\/(\S*)$/(?1:$1)/ga}}")
 | |
| install.packages("$2", type = "source", repos = NULL)
 | |
| library("${3:${2/^(\w+)_.*$/(?1:$1)/ga}}")
 | |
| endsnippet
 | |
| 
 | |
| snippet lib "Import a library"
 | |
| library('${0:${VISUAL:package}}')
 | |
| endsnippet
 | |
| 
 | |
| snippet req "Require a file"
 | |
| require('${0:${VISUAL:package}}')
 | |
| endsnippet
 | |
| 
 | |
| snippet source "Source a file"
 | |
| source('${0:${VISUAL:file}}')
 | |
| endsnippet
 | |
| 
 | |
| snippet if "If statement"
 | |
| if ($1) {
 | |
| 	${0:${VISUAL}}
 | |
| }
 | |
| endsnippet
 | |
| 
 | |
| snippet eif "Else-If statement"
 | |
| else if ($1) {
 | |
| 	${0:${VISUAL}}
 | |
| }
 | |
| endsnippet
 | |
| 
 | |
| snippet el "Else statement"
 | |
| else {
 | |
| 	${0:${VISUAL}}
 | |
| }
 | |
| endsnippet
 | |
| 
 | |
| snippet ife "if .. else"
 | |
| if ($1) {
 | |
| 	${2:${VISUAL}}
 | |
| } else {
 | |
| 	$0
 | |
| }
 | |
| endsnippet
 | |
| 
 | |
| snippet wh "while loop"
 | |
| while($1) {
 | |
| 	${0:${VISUAL}}
 | |
| }
 | |
| endsnippet
 | |
| 
 | |
| snippet for "for loop"
 | |
| for (${1:item} in ${2:list}) {
 | |
| 	${0:${VISUAL}}
 | |
| }
 | |
| endsnippet
 | |
| 
 | |
| snippet fun "Function definition"
 | |
| ${1:name} <- function ($2) {
 | |
| 	${0:${VISUAL}}
 | |
| }
 | |
| endsnippet
 | |
| 
 | |
| snippet ret "Return call"
 | |
| return(${0:${VISUAL}})
 | |
| endsnippet
 | |
| 
 | |
| snippet df "Data frame"
 | |
| ${1:name}[${2:rows}, ${0:cols}]
 | |
| endsnippet
 | |
| 
 | |
| snippet c "c function"
 | |
| c(${0:${VISUAL:items}})
 | |
| endsnippet
 | |
| 
 | |
| snippet li "list function"
 | |
| list(${0:${VISUAL:items}})
 | |
| endsnippet
 | |
| 
 | |
| snippet mat "matrix function"
 | |
| matrix(${1:${VISUAL:data}}, nrow = ${2:rows}, ncol = ${0:cols})
 | |
| endsnippet
 | |
| 
 | |
| snippet apply "apply function"
 | |
| apply(${1:${VISUAL:array}}, ${2:margin}, ${0:function})
 | |
| endsnippet
 | |
| 
 | |
| snippet lapply "lapply function"
 | |
| lapply(${1:${VISUAL:list}}, ${0:function})
 | |
| endsnippet
 | |
| 
 | |
| snippet sapply "sapply function"
 | |
| sapply(${1:${VISUAL:list}}, ${0:function})
 | |
| endsnippet
 | |
| 
 | |
| snippet vapply "vapply function"
 | |
| vapply(${1:${VISUAL:list}}, ${2:function}, ${0:type})
 | |
| endsnippet
 | |
| 
 | |
| snippet mapply "mapply function"
 | |
| mapply(${1:${VISUAL:function}}, ${0:...})
 | |
| endsnippet
 | |
| 
 | |
| snippet tapply "tapply function"
 | |
| tapply(${1:${VISUAL:vector}}, ${2:index}, ${0:function})
 | |
| endsnippet
 | |
| 
 | |
| snippet rapply "rapply function"
 | |
| rapply(${1:${VISUAL:list}}, ${0:function})
 | |
| endsnippet
 | |
| 
 | |
| snippet pl "Plot function"
 | |
| plot(${1:${VISUAL:x}}, ${0:y})
 | |
| endsnippet
 | |
| 
 | |
| snippet ggp "ggplot2 plot"
 | |
| ggplot(${1:${VISUAL:data}}, aes(${0:aesthetics}))
 | |
| endsnippet
 | |
| 
 | |
| snippet fis "Fisher test"
 | |
| fisher.test(${1:x}, ${0:y})
 | |
| endsnippet
 | |
| 
 | |
| snippet chi "Chi Squared test"
 | |
| chisq.test(${1:x}, ${0:y})
 | |
| endsnippet
 | |
| 
 | |
| snippet tt "t-test"
 | |
| t.test(${1:x}, ${0:y})
 | |
| endsnippet
 | |
| 
 | |
| snippet wil "Wilcox test"
 | |
| wilcox.test(${1:x}, ${0:y})
 | |
| endsnippet
 | |
| 
 | |
| snippet cor "Correlation test"
 | |
| cor.test(${1:x}, ${0:y})
 | |
| endsnippet
 | |
| 
 | |
| snippet fte "FTE test"
 | |
| var.test(${1:x}, ${0:y})
 | |
| endsnippet
 | |
| 
 | |
| snippet kvt "KV test"
 | |
| kv.test(${1:x}, ${0:y})
 | |
| endsnippet
 | |
| 
 | |
| #################################
 | |
| #  easily create string vector  #
 | |
| #################################
 | |
| # Given individual words separated by spaces
 | |
| # Select words (e.g. shift-v for whole line (such as the line above)
 | |
| # then press <Tab> then type "vec", press <Tab> again to get this:
 | |
| # var <- c("#","Given","individual","words","separated","by","spaces")
 | |
| # var <- c("#","type","out","individual","words","separated","by","spaces")
 | |
| snippet vec
 | |
| ${1:var} <- c("${0:${VISUAL:/ /","/g}}")
 | |
| endsnippet
 | 
