Hogar Finanzas personales 10 Cosas que puede hacer en R que habría hecho en Microsoft Excel - Para Dummies

10 Cosas que puede hacer en R que habría hecho en Microsoft Excel - Para Dummies

Tabla de contenido:

Video: Curso Excel 2013: Crear Fórmulas con Referencias a Celdas de otras Hojas y otros Libros. 2024

Video: Curso Excel 2013: Crear Fórmulas con Referencias a Celdas de otras Hojas y otros Libros. 2024
Anonim

La hoja de cálculo es probablemente una de las aplicaciones de PC más utilizadas, y por una buena razón: las hojas de cálculo facilitan la realización de cálculos y otras operaciones en tablas. datos. Pero las hojas de cálculo también presentan algunos riesgos: son fáciles de corromper y muy difíciles de depurar. La buena noticia es que puedes usar R para hacer muchas de las mismas cosas que solías hacer en las hojas de cálculo.

Agregar totales de fila y columna

Una tarea que puede hacer con frecuencia en una hoja de cálculo es calcular los totales de fila o columna. La forma más fácil de hacerlo es usar las funciones rowSums () y colSums (). Del mismo modo, use rowMeans () y colMeans () para calcular los promedios.

Pruébelo en el iris del conjunto de datos incorporado. Primero, elimine la quinta columna, porque contiene texto que describe las especies de iris: >> iris. num <- iris [-5]

Luego, calcule la suma y la media de cada columna:

>> colsums (iris. Num)> colMeans (iris num.)

Estas dos funciones son muy convenientes, pero es posible que desee calcular alguna otra estadística para cada columna o fila. Hay una manera fácil de atravesar filas o columnas de una matriz o marco de datos: la función apply (). Por ejemplo, obtener el mínimo de una columna es lo mismo que aplicar una función min () a la segunda dimensión de sus datos: >> aplicar (iris num, 2, min)> aplicar (iris num, 2, max)
Números de formateo

Puede usar format () para convertir sus números en texto bonito, listo para imprimir. Esta función toma una serie de argumentos para controlar el formato de su resultado. Aquí hay algunos:

trim

:

Un valor lógico. Si es FALSO, agrega espacios para justificar a la derecha el resultado. Si es VERDADERO, suprime los espacios iniciales.

  • dígitos : ¿Cuántos dígitos significativos de valores numéricos mostrar?

  • nsmall : El número mínimo de dígitos después del punto decimal.

  • Además, usted controla el formato del punto decimal con decimal. marca, la marca entre los intervalos antes de el punto decimal con grande. mark, y la marca entre intervalos

después de el punto decimal con small. marca. Por ejemplo, puede imprimir el número 12345. 6789 con una coma como punto decimal, espacios como la marca grande y puntos como la marca pequeña: formato >> (12345. 6789, dígitos = 9, decimal. mark = ",", + big. mark = "", small. mark = ".", small. interval = 3) [1] "12 345, 678. 9" Como ejemplo más práctico, para calcular el medio de algunas columnas en mtcars y luego imprimir los resultados con dos dígitos después del punto decimal, use lo siguiente: >> formato x (x, dígitos = 2, nsmall = 2) mpg cyl disp hp "20.09 "" 6. 19 "" 230. 72 "" 146. 69 " Observe que el resultado ya no es un número sino una cadena de texto. Por lo tanto, tenga cuidado cuando use el formato de número: este debería ser el último paso en su flujo de trabajo de informes.

Si está familiarizado con la programación en lenguajes similares a C o C ++, entonces también puede ser útil la función sprintf (). Este contenedor le permite pegar su número formateado directamente en una cadena.

Aquí hay un ejemplo de convertir números en porcentajes: >> x sprintf ("%. 1f %%", 100 * x) [1] "50. 0% "" 51. 0% "" 52. 0% "" 53. 0% "" 54. 0% "" 55. 0% "

Esto es lo que hace: el primer argumento para sprintf () indica el formato, en este caso,"%. 1f %% ". El argumento de formato utiliza literales especiales que indican que la función debe reemplazar este literal con una variable y aplicar algún formato. Los literales siempre comienzan con el símbolo%. Entonces, en este caso,%. 1f significa formatear el primer valor suministrado como un valor de punto fijo con un dígito después del punto decimal, y %% es un literal que significa imprimir un%.

Para formatear algunos números como moneda, en este caso, U. S. dollars, use: >> set. seed (1)> x sprintf ("$% 3. 2f", x) [1] "$ 265. 51" "$ 372. 12" "$ 572. 85" "$ 908. 21" "$ 201. 68 "

La función sprintf () te da una forma alternativa de pegar el valor de cualquier variable en una cadena: >> cosas precio sprintf ("% s cost $% 3. 2f ", cosas, precio) [1] "El pan cuesta $ 2.10" "las cookies cuestan $ 4. 00"

Lo que sucede aquí es que, como usted suministró dos vectores (cada uno con dos elementos) a sprintf (), su resultado es un vector con dos elementos. R recorre los elementos y los coloca en los literales sprintf ().

Puedes hacer todo con paste () y format () que puedes hacer con sprintf (), por lo que realmente no necesitas usarlo. Pero cuando lo haces, puede simplificar tu código.

Ordenando datos

Para ordenar datos en R, usa las funciones ordenar () u ordenar ().

Para ordenar los mtcars del marco de datos en orden creciente o decreciente de la columna hp, use: >> con (mtcars, mtcars [orden (hp),])> con (mtcars, mtcars [orden (hp, decreciente) = VERDADERO),])

Tomar decisiones con if

Las hojas de cálculo le dan la capacidad de realizar todo tipo de "¿Qué pasa si? "Análisis. Una forma de hacerlo es usar la función if () en una hoja de cálculo.

R también tiene la función if (), pero se usa principalmente para control de flujo en tus scripts. Como normalmente desea realizar un cálculo en un vector completo en R, generalmente es más apropiado usar la función ifelse ().

Aquí hay un ejemplo del uso de ifelse () para identificar automóviles con alta eficiencia de combustible en el conjunto de datos de mtcars: >> mtcars <- transform (mtcars, + mpgClass = ifelse (mtcars en mpg [mtcars $ mpgClass == "High"],]

Cálculo de totales condicionales

Otra cosa que probablemente hizo mucho en Excel es calcular sumas condicionales y cuenta con las funciones sumif () y countif ().

Puede hacer lo mismo en una de dos formas en R:

Use ifelse.

Simplemente calcule la medida del interés en un subconjunto de sus datos.

Supongamos que quiere calcular una media condicional de eficiencia de combustible en mtcars. Usted hace esto con la función mean (). Ahora, para obtener la eficiencia de combustible para los autos en cualquier lado de un umbral de 150 caballos de fuerza, intente lo siguiente: >> con (mtcars, mean (mpg)) [1] 20. 09062> con (mtcars, mean (mpg [hp con (mtcars, mean (mpg [hp> = 150])) [1] 15. 40667

Contar el número de elementos en un vector es lo mismo que preguntar sobre su longitud. Esto significa que la función Excel countif () tiene una R equivalente en longitud (): >> con (mtcars, longitud (mpg [hp> 150])) [1] 13

Transposición de columnas o filas

A veces es necesario transponer sus datos de filas a columnas o viceversa. En R, la función para transponer una matriz es t (): >> xx [1] [2] [3] [1,] 1 5 9 [2,] 2 6 10 [3,] 3 7 11 [4,] 4 8 12

Para obtener la transposición de una matriz, use t (): >> t (x) [1] [2] [3] [4] [1,] 1 2 3 4 [2,] 5 6 7 8 [3,] 9 10 11 12

También puede usar t () para transponer marcos de datos, pero tenga cuidado cuando haga esto. El resultado de una transposición es siempre una matriz (o matriz). Porque las matrices siempre tienen solo un tipo de variable, como numérico o de carácter, los tipos de variables de sus resultados pueden no ser los esperados.

Encontrar valores únicos o duplicados

Para identificar todos los valores únicos en sus datos, use la función unique (). Intente encontrar los valores únicos de la cantidad de cilindros en mtcars: >> unique (mtcars $ cyl) [1] 6 4 8

  • A veces querrá saber qué valores de sus datos son duplicados. Dependiendo de su situación, esos duplicados serán válidos, pero a veces las entradas duplicadas pueden indicar problemas de entrada de datos.

  • La función para identificar entradas duplicadas está duplicada (). En el iris del conjunto de datos incorporado, hay una fila duplicada en la línea 143. Pruébelo usted mismo: >> engaña a la cabeza (engaña) [1] FALSO FALSO FALSO FALSO FALSO FALSO> que (engaña) [1] 143> iris [engaña,] Sepal. Longitud Sepal. Ancho Pétalo. Longitud de pétalo. Ancho Especies 143 5. 8 2. 7 5. 1 1. 9 virginica

Debido a que el resultado de duplicated () es un vector lógico, puede usarlo como índice para eliminar filas de sus datos. Para hacer esto, use el operador de negación - el signo de exclamación (como en! Dupes): >> iris [! dupes,]> nrow (iris [! dupes,]) [1] 149

Trabajar con tablas de búsqueda

En una aplicación de hoja de cálculo como Excel, puede crear tablas de búsqueda con las funciones vlookup o una combinación de índice y coincidencia.

En R, puede ser conveniente usar merge () o match (). La función match () devuelve un vector con las posiciones de los elementos que coinciden con su valor de búsqueda.

Por ejemplo, para encontrar la ubicación del elemento "Toyota Corolla" en los nombres de las filas de mtcars, intente lo siguiente: >> index index [1] 20> mtcars [index, 1: 4] mpg cyl disp HP Toyota Corolla 33. 9 4 71. 1 65

Trabajar con tablas dinámicas

Para tablas simples en R, puede usar la función tapply () para lograr resultados similares a tablas dinámicas en Excel.Aquí hay un ejemplo del uso de tapply () para calcular la hp media para automóviles con diferentes números de cilindros y engranajes: >> con (mtcars, tapply (hp, list (cyl, gear), mean)) 3 4 5 4 97. 0000 76. 0 102. 0 6 107. 5000 116. 5 175. 0 8 194. 1667 NA 299. 5

Para tablas un poco más complejas, es decir, tablas con más de dos factores de clasificación cruzada, utilice el agregado () función: >> agregado (hp ~ cyl + gear + am, mtcars, mean) cyl gear am hp 1 4 3 0 97. 00000 2 6 3 0 107. 50000 3 8 3 0 194. 16667 4 4 4 0 78. 50000 5 6 4 0 123. 00000 6 4 4 1 75. 16667 7 6 4 1 110. 00000 8 4 5 1 102. 00000 9 6 5 1 175. 00000 10 8 5 1 299. 50000

Uso el objetivo busca y soluciona

En R, la función optimize () proporciona un mecanismo bastante simple para optimizar funciones.

Imagine que es el director de ventas de una empresa y necesita establecer el mejor precio para su producto. En otras palabras, encuentre el precio de un producto que maximice los ingresos.

En economía, un modelo simple de fijación de precios establece que las personas compran menos de un producto dado cuando el precio aumenta. Aquí hay una función muy simple que tiene este comportamiento: >> ventas <- función (precio) {100 - 0. 5 * precio}

El ingreso esperado es simplemente el producto del precio y las ventas esperadas: >> ingresos <- función (precio) {precio * ventas (precio)}

Puede usar la función de curva () para trazar funciones continuas. Esto toma una función como entrada y produce un diagrama. Trate de graficar el comportamiento de ventas e ingresos usando la función curve (), variando el precio de $ 50 a $ 150: >> curva oldpar (ventas, desde = 50, hasta = 150, xname = "precio", main = "Ventas ")> Curve (revenue, from = 50, to = 150, xname =" price ", main =" Revenue ")> par (oldpar)

Sus resultados deben ser similares a esto.

Un modelo de ventas e ingresos esperados.

Tiene un modelo funcional de ventas e ingresos. Puede ver inmediatamente que hay un punto de máximo ingreso. Luego, use la función R optimize () para encontrar el valor de ese máximo. Para utilizar optimize (), debe indicarle qué función usar (en este caso, revenue ()), así como el intervalo (en este caso, precios entre 50 y 150). De forma predeterminada, optimize () busca un valor mínimo, por lo que en este caso debe indicarle que busque el valor máximo: >> optimize (revenue, interval = c (50, 150), maximum = TRUE) $ maximum [1] 100 $ objetivo [1] 5000

Y ahí tienes. Cobra un precio de $ 100 y espera obtener $ 5,000 en ingresos.
10 Cosas que puede hacer en R que habría hecho en Microsoft Excel - Para Dummies

Selección del editor

Cómo agregar campos calculados a datos en dummies

Cómo agregar campos calculados a datos en dummies

Después de haber creado el subconjunto apropiado de sus datos, es probable que el siguiente paso en su análisis sea realizar algunos cálculos con R. Cómo hacer aritmética en columnas de un marco de datos R hace que sea muy fácil realizar cálculos en columnas de un marco de datos porque cada columna es en sí misma a ...

10 Cosas que puede hacer en R que habría hecho en Microsoft Excel - Para Dummies

10 Cosas que puede hacer en R que habría hecho en Microsoft Excel - Para Dummies

La hoja de cálculo es probablemente una de las aplicaciones de PC más utilizadas, y por una buena razón: las hojas de cálculo facilitan la realización de cálculos y otras operaciones en los datos tabulares. Pero las hojas de cálculo también presentan algunos riesgos: son fáciles de corromper y muy difíciles de depurar. La buena noticia es que puede usar R ...

Cómo agregar observaciones a un marco de datos en dummies

Cómo agregar observaciones a un marco de datos en dummies

Con el paso del tiempo, nuevo los datos pueden aparecer y deben agregarse al conjunto de datos en R. Al igual que las matrices, los marcos de datos se pueden agregar utilizando la función rbind (). Agregar una sola observación Diga que Granny y Geraldine jugaron otro juego con su equipo, y desea agregar el número de cestas que ...

Selección del editor

Elección del algoritmo correcto para Aprendizaje automático: las máquinas de inflar

Elección del algoritmo correcto para Aprendizaje automático: las máquinas de inflar

Aprendizaje automático implican el uso de muchos algoritmos diferentes. Esta tabla le brinda un resumen rápido de las fortalezas y debilidades de varios algoritmos. Algoritmo Mejor en Pros Cons Random Forest Apto en casi cualquier problema de aprendizaje automático Bioinformatics Puede trabajar en paralelo Raramente overfits Maneja automáticamente valores perdidos No hay necesidad de transformar ninguna variable ...

Elegir una distribución de Python con Machine Learning in Mind - Dummies

Elegir una distribución de Python con Machine Learning in Mind - Dummies

Es completamente posible obtener una copia genérica de Python y agregue todas las bibliotecas de aprendizaje automático requeridas. El proceso puede ser difícil porque debe asegurarse de tener todas las bibliotecas necesarias en las versiones correctas para garantizar el éxito. Además, debe realizar la configuración necesaria para hacer ...

Algoritmos de agrupación utilizados en Data Science - Dummies

Algoritmos de agrupación utilizados en Data Science - Dummies

Usted usa algoritmos de agrupamiento para subdividir sus conjuntos de datos en grupos de puntos de datos que son más similares para un atributo predefinido. Si tiene un conjunto de datos que describe múltiples atributos sobre una característica en particular y desea agrupar sus puntos de datos según sus similitudes de atributos, entonces use algoritmos de agrupamiento. Un diagrama de dispersión simple de ...

Selección del editor

ASVAB Práctica de razonamiento aritmético: preguntas de geometría tridimensional: dummies

ASVAB Práctica de razonamiento aritmético: preguntas de geometría tridimensional: dummies

La subprueba de razonamiento aritmético en el ASVAB contendrá preguntas de geometría que involucran figuras tridimensionales. Con esto en mente, debe memorizar las fórmulas para el área de superficie y el volumen de las formas tridimensionales más comunes. Preguntas de práctica ¿Cuánta hoja de metal es necesaria para crear un tanque de agua con forma de cilindro de 300 pies de largo y ...

ASVAB Práctica de razonamiento aritmético: problemas de geometría bidimensional: maniquíes

ASVAB Práctica de razonamiento aritmético: problemas de geometría bidimensional: maniquíes

En la subprueba de razonamiento aritmético en el ASVAB, las preguntas de geometría bidimensional suelen ser bastante sencillas. Sin embargo, si se presentan como problemas planteados, es importante que los lea cuidadosamente y tal vez incluso dibuje un diagrama para ayudarlo a visualizar el problema. Preguntas de práctica Un marco rectangular tiene un perímetro interior de 38 pulgadas. Uno ...

Consejos de razonamiento aritmético aSVAB: dummies

Consejos de razonamiento aritmético aSVAB: dummies

La subprueba de razonamiento aritmético de ASVAB constituye una parte importante de su puntaje, por lo que no dejes que estos problemas de palabras te hagan tropezar. Recuerde: lea el problema a fondo para que comprenda lo que le está pidiendo. Asegúrate de estar usando las unidades de medida correctas para el problema (y si es necesario, conviértelas). ...