Siempre he encontrado que los archivos de perfil de inicio de otras personas son útiles e instructivos sobre el idioma. Además, aunque tengo algo de personalización para Bash y Vim , no tengo nada para R.
Por ejemplo, una cosa que siempre quise son colores diferentes para el texto de entrada y salida en un terminal de ventana, y tal vez incluso el resaltado de sintaxis.
r
terminal
customization
rprofile
Peter Mortensen
fuente
fuente
.Rprofile
no debe incluir ningún código que cambie los resultados. Lo que puede incluir es cosas que cambian la apariencia de R (por ejemplooptions("width"=160)
) o el espejo CRAN predeterminado (por ejemplooptions(repos = c(CRAN = "http://cran.rstudio.com"))
). Sin embargo, no cargue paquetes, cambie las opciones predeterminadas de las funciones utilizadas regularmente, defina la función, etc. Su código debe ser autónomo y reproducir los resultados sin su.Rprofile
archivo en particular ..Rprofile
?.Rprofile
es un lugar apropiado para realizar cambios en la aplicación. En segundo lugar, su pregunta debe ser una pregunta SO separada. Intento usar un patrón similar al que hicimos en nuestro proyecto de inspección de alimentos (vea el diseño del código y los pasos de inicialización en la parte superior de cada script).Respuestas:
Aquí esta el mio. No te ayudará con el color, pero lo obtengo de ESS y Emacs ...
fuente
r
y luegorm
ponerlo, puedes ponerlo dentro de unlocal({ })
bloque. Buena respuesta, ¡me encanta la configuración X11!local({ ... })
que se muestra enhelp(Startup)
es lo que suelo hacer en estos díasRprofile.site
. No he necesitado el truco X11 en mucho tiempo :)Aunque en realidad no tengo eso en mi .Rprofile, porque podría romper el código de mis coautores, desearía que fuera el predeterminado. ¿Por qué?
1) Los vectores de caracteres usan menos memoria (pero apenas);
2) Más importante aún, evitaríamos problemas como:
y
Los factores son excelentes cuando los necesita (p. Ej., Implementar el ordenamiento en gráficos), pero son una molestia la mayor parte del tiempo.
fuente
Odio escribir las palabras completas 'cabeza', 'resumen', 'nombres' cada vez, así que uso alias.
Puede poner alias en su archivo .Rprofile, pero tiene que usar la ruta completa a la función (por ejemplo, utils :: head) de lo contrario no funcionará.
EDIT: para responder a su pregunta, puede utilizar el colorout paquete para tener diferentes colores en el terminal. ¡Frio! :-)
fuente
n
que me mordería, personalmente, en la parte posterior durante la depuración..startup <- new.env()
assign("h", utils::head, env=.startup)
assign("n", base::names, env=.startup)
assign("ht", function(d) rbind(head(d,6),tail(d,6)) , env=.startup)
assign("s", base::summary, env=.startup)
attach(.startup)
sum <- base::summary
. Esa no fue una gran idea.colorout
: "" "Este paquete ha sido archivado: utilizó puntos de entrada que no son API no permitidos por las políticas CRAN." ""Aquí está el mío. Siempre uso el repositorio principal de cran, y tengo un código para facilitar la fuente del código del paquete en desarrollo.
fuente
Me gusta guardar mi historial de comandos R y tenerlo disponible cada vez que ejecuto R:
En el shell o .bashrc:
en .Rprofile:
fuente
Aquí hay dos funciones que encuentro útiles para trabajar con Windows.
El primero convierte la
\
s en/
.El segundo abre el directorio de trabajo en una nueva ventana del explorador.
fuente
.repath
es por lo metiendo en mi .Rprofile.snippet wpp
`r paste("\"", gsub("\\\\", "/", readClipboard()), "\"", sep = "")`
Tengo este truco más dinámico para usar el ancho completo del terminal, que intenta leer desde la variable de entorno COLUMNS (en Linux):
De esta manera, R usará todo el ancho incluso cuando cambie el tamaño de la ventana de su terminal.
fuente
COLUMNS
no está configurado, puede intentarlowidth = as.integer(system('tput cols',intern=TRUE)
como respaldo.La mayoría de mis funciones personales y bibliotecas cargadas están en el script Rfunctions.r
fuente
Aquí está de mi ~ / .Rprofile , diseñado para Mac y Linux.
Esto hace que los errores sean más fáciles de ver.
Odio la elección del menú CRAN, así que configúrelo en uno bueno.
Más historia!
Lo siguiente es para ejecutar en Mac OSX desde la terminal (que prefiero en gran medida a R.app porque es más estable, y puede organizar su trabajo por directorio; también asegúrese de obtener un buen ~ / .inputrc ). Por defecto, obtienes una pantalla X11, que no se ve tan bien; esto en cambio da una pantalla de cuarzo igual que la GUI. Se
if
supone que la declaración atrapará el caso cuando esté ejecutando R desde el terminal en Mac.Y precargar algunas bibliotecas,
donde util.r es una bolsa aleatoria de cosas que uso, bajo flujo.
Además, dado que otras personas mencionaron el ancho de la consola, así es como lo hago.
En realidad, esto no se
.Rprofile
debe a que debe volver a ejecutarlo cada vez que cambia el tamaño de la ventana del terminal. Lo tengo yutil.r
luego lo obtengo según sea necesario.fuente
Aquí están los míos:
fuente
?new.env
,?assign
y?sys.source
. Si no puede hacerlo funcionar, publique una nueva Q en SO y estoy seguro de que obtendrá respuestas.my.as.Date
puede ser reemplazado por elLubridate
paquete. Estoy en lo cierto?fuente
Haga que data.frames se muestre como 'head', solo sin tener que escribir 'head'
( ¿Cómo hacer que la 'cabeza' se aplique automáticamente a la salida? )
fuente
A menudo tengo una cadena de llamadas de depuración que necesito llamar y descomentarlas puede ser muy tedioso. Con la ayuda de la comunidad SO , busqué la siguiente solución e inserté esto en mi
.Rprofile.site
.# BROWSER
está allí para mis tareas de Eclipse, de modo que tenga una visión general de las llamadas del navegador en la ventana Vista de tareas.fuente
El mío no es muy elegante:
fuente
Trabajo mucho desde bases de datos mysql, por lo que conectarse de inmediato es una bendición. Solo desearía que hubiera una forma de enumerar las bases de datos disponibles para no tener que recordar todos los nombres diferentes.
fuente
Mensaje de Stephen Turner en .Rprofiles tiene varios alias y funciones de inicio útiles.
Me encuentro usando su ht y hh a menudo.
fuente
corner
que hace lo mismo que tuhh
función y un poco más. ;)Aquí está la mía, incluidas algunas de las ideas mencionadas.
Dos cosas que tal vez quieras mirar:
.
fuente
Utilizo lo siguiente para obtener cacheSweave (o pgfSweave) para trabajar con el botón "Compilar PDF" en RStudio:
fuente
Mina incluye
options(menu.graphics=FALSE)
porque me gusta Desactivar / emergente tcltk suprimir para la selección espejo CRAN en I .fuente
Aquí está el mío. Nada demasiado innovador. Reflexiones sobre por qué elecciones particulares:
stringsAsFactors
porque me resulta extremadamente agotador pasarlo como argumento cada vez que leo un archivo CSV. Dicho esto, ya me ha causado cierta molestia menor al usar el código escrito en mi computadora habitual en una computadora que no tenía mi .Rprofile. Sin embargo, lo mantengo, ya que los problemas que ha causado palidecen en comparación con los problemas que no causa que se configuren todos los días.utils
paquete antesoptions(error=recover)
, no puede encontrar la recuperación cuando se coloca dentro de uninteractive()
bloque..db
para mi configuración de Dropbox en lugar deoptions(dropbox=...)
porque lo uso todo el tiempo dentrofile.path
y ahorra mucho tipeo. La guía.
evita que aparezcals()
.Sin más preámbulos:
fuente
Aquí hay un pequeño fragmento para usar exportando tablas a LaTeX . Cambia todos los nombres de columna al modo matemático para los muchos informes que escribo. El resto de mi .Rprofile es bastante estándar y está cubierto principalmente en la parte superior.
fuente
Configuré mi tema de color de celosía en mi perfil. Aquí hay otros dos ajustes que uso:
fuente
setwd
reemplazo funcionará mejor en la versión:utils::assignInNamespace("setwd",function(dir) {on.exit(setWindowTitle(base::getwd())); .Internal(setwd(dir))}, "base")
Tengo una variable de entorno R_USER_WORKSPACE que apunta al directorio superior de mis paquetes. En .Rprofile defino una función devlib que establece el directorio de trabajo (para que los datos () funcionen) y obtiene todos los archivos .R en el subdirectorio R. Es bastante similar a la función l () de Hadley anterior.
fuente
Encontré dos funciones realmente necesarias: Primero, cuando configuré
debug()
varias funciones y resolví el error, así que quieroundebug()
todas las funciones, no una por una. Laundebug_all()
función agregada como la respuesta aceptada aquí es la mejor.En segundo lugar, cuando he definido muchas funciones y estoy buscando un nombre de variable específico, es difícil encontrarlo en todos los resultados de
ls()
la función, incluidos los nombres de las funciones. Lalsnofun()
función publicada aquí es realmente buena.fuente