Sat. Nov 26th, 2022

¿Tiene dificultades para hacer la transición entre el uso de Python y R? Pruebe estos consejos para que la transición sea más suave

Foto de Ivan Shunyakov en Unsplash Un descubrimiento mío reciente es que muchos científicos de datos usan tanto Python como R. La historia suele ser que usan R para estudios de posgrado e investigación mientras usan Python para el trabajo. Dado que muchas personas trabajan mientras van a la escuela, estos científicos de datos tienen que alternar entre Python y R, a veces varias veces en un solo día, según en qué estén trabajando para la escuela o el trabajo. Porque muchos (léase: la mayoría) Los cursos de ciencia de datos o las rutas de aprendizaje se centran en un idioma sobre otro, hay una brecha en el aprendizaje que no ayuda a los científicos de datos a cambiar entre ambos idiomas. Quizás sorprendentemente, cambiar entre dos lenguajes de programación el mismo día puede ser un desafío, especialmente cuando busca completar un trabajo similar. Por ejemplo, es fácil para los desarrolladores web cambiar entre HTML, CSS y JavaScript en el mismo día porque cada idioma maneja una parte muy específica de un sitio web. Sin embargo, los científicos de datos pueden estar completando un tipo de análisis de datos en R para una clase de estudios de posgrado, mientras que más tarde necesitan usar Python para completar un análisis diferente para su trabajo. La gran cantidad de científicos de datos que están cambiando entre ambos lenguajes en un día determinado significa que se debe llenar un vacío en la educación en ciencia de datos brindando consejos sobre cómo administrar mejor el uso regular de ambos idiomas. Aquí, veremos algunos consejos simples que se pueden implementar como parte de su rutina en menos de 10 minutos que lo ayudarán a convertirse en un científico de datos más eficiente al cambiar entre Python y R. Una de las mejores cosas que puede hacer para comenzar a trabajar de manera eficiente tanto en Python como en R es completar su trabajo de Python y R en días separados. Al agrupar todas sus tareas de Python en un día y las tareas de R en otro, garantiza que no necesitará cambiar de idioma el mismo día. Esto lleva menos de 10 minutos para implementarlo, ya que todo lo que necesita hacer es planificar su semana en torno al idioma con el que trabajará en un día determinado. Por ejemplo, los lunes, miércoles y viernes pueden ser días en los que completa el trabajo realizado en Python, mientras que los martes y jueves están reservados para tareas que requieren R. Day. El procesamiento por lotes de sus tareas en función del lenguaje de programación le permite permanecer en un estado de flujo en el que no tiene que preocuparse por usar diferentes convenciones, sintaxis o documentación. En su lugar, puede concentrarse en escribir código limpio dadas las convenciones del lenguaje sin caer en la trampa de codificar con acento (vea el consejo 5). Recuerdo que en mi primer año de universidad estudiando desarrollo de software, la mayoría de mis cursos de codificación usaban C#. Esto facilitó el paso de una clase a otra sin tener que acostumbrarse a usar un nuevo idioma. Las cosas se pusieron mucho más difíciles en mi segundo año cuando comenzamos a tomar cursos en una variedad de lenguajes, incluidos C#, Java, PHP y más. Esto hizo que fuera más difícil entrar en ritmo debido a tener que cambiar constantemente los lenguajes de programación cada dos horas. Este desafío es comparable a hablar varios lenguajes verbales diferentes en un día. Antes de que adquieras fluidez, es mentalmente agotador hacer el cambio entre diferentes idiomas. Las formas que tu boca y tu lengua necesitan hacer son diferentes, los sonidos son diferentes, la gramática es diferente y las convenciones y costumbres del idioma son diferentes. Sin embargo, si un día habla inglés, el siguiente francés, el siguiente italiano, etc., descubrirá que es mucho más capaz de hablar de manera eficiente y efectiva porque está trabajando durante un período prolongado en una language. Sin embargo, no siempre es posible dedicar días enteros a Python o R. A veces, el trabajo, la escuela y la vida suceden al mismo tiempo, lo que significa que debe hacer malabarismos con varios plazos, proyectos y requisitos diferentes. Un método alternativo, aunque similar, de agrupar sus tareas por lotes es dedicar la mitad del día a las tareas de Python y la otra mitad a las tareas de R. Luego, al tener un descanso sustancial en el medio en el que no hace nada relacionado con ningún lote de tareas, puede pasar a la segunda mitad del día listo para trabajar en un idioma diferente. El descanso a la mitad del día es esencial para restablecer tu cerebro y darle la oportunidad de eliminar el uso del otro idioma. Al dividir sus tareas en dos mitades separadas del día, se asegura de no estar trabajando en una tarea en Python durante 20 minutos, seguida de una tarea en R durante una hora y una continuación de este ciclo que deja su cerebro agotado. y no trabajar a su máxima eficiencia. Cuando estaba en la universidad, me resultó más fácil trabajar tanto en C# como en Java porque pude encontrar las similitudes entre los dos lenguajes y usarlos para trabajar de manera eficiente en ambos lenguajes. De manera similar, cuando estaba aprendiendo ruso, encontré varias similitudes entre este y el francés y el inglés, los cuales ya conocía. Estas similitudes me permitieron comprender la connotación de muchas palabras, incluso si no entendía las palabras de inmediato al principio. El truco para poder cambiar entre Python y R es encontrar las similitudes entre los dos idiomas, sin importar lo finitos que sean. puede ser. Por ejemplo, tanto Python como R se pueden usar para escribir código orientado a objetos y ambos se pueden usar para realizar análisis estadísticos. Claro, trabajar desde dos idiomas indexados de manera diferente puede ser una molestia, pero al menos tienen más en común que diferencias. Sin embargo, al menos puede usar el mismo IDE para ambos idiomas, ya que RStudio y Atom son compatibles con R y Python. Es importante recordar que las similitudes que encuentre entre los dos idiomas pueden ser diferentes de las que encuentre otra persona. De manera similar a cómo se pueden crear analogías de diferentes maneras para describir la relación entre dos cosas, también se pueden usar las similitudes que encuentre entre R y Python para facilitar la transición entre ambos lenguajes. puede comenzar a crear una lista de similitudes de Python y R en una nota adhesiva. Puede dejar esta nota en su escritorio como un recordatorio de los puntos clave de cada idioma que se pueden usar para pasar fácilmente de uno a otro. La habilidad más valiosa que aprendí mientras estudiaba desarrollo de software en la universidad es cómo hacer buenas preguntas. Estoy seguro de que puede relacionar que hacer preguntas mal definidas lo llevará a alrededor de 200 resultados diferentes de StackOverflow que pueden o no estar relacionados con la respuesta que está buscando, pero no son lo suficientemente exactos como para obtener una solución rápida. su problema. Trabajar en dos idiomas como Python y R requiere que pueda hacer la pregunta correcta para el idioma en el que está trabajando actualmente. Por ejemplo, hacer una pregunta sobre R de la misma manera que haría una pregunta sobre Python puede devolver resultados que, como se mencionó anteriormente, no son exactamente lo que estaba buscando. Mientras que copiar mensajes de error en las barras de búsqueda es una excelente manera de encontrar respuestas de StackOverflow a problemas similares. Sin embargo, ¿realmente comprende qué salió mal si todo lo que está haciendo es copiar un mensaje de error? Una mejor manera de familiarizarse con las peculiaridades de Python y R es trabajar para comprender qué salió mal en su código. Luego, puede hacer mejores preguntas que se aplican más directamente al problema que tiene que un mensaje de error genérico. Practicar cómo hace sus preguntas se puede completar en menos de 10 minutos cada día y es mejor hacerlo mientras está laboral. Rápidamente comenzará a notar qué preguntas arrojan las respuestas correctas versus aquellas que lo conducen a respuestas generales que podrían resolver una gran cantidad de problemas. Si bien mencioné anteriormente que Python y R tienen más en común que no, una de las claves los lugares donde difieren significativamente es su documentación. Python es conocido por tener una de las mejores documentaciones de código que existen, mientras que R carece seriamente. Mantener cerca cualquier documentación que pueda tener en sus manos puede ayudarlo a escribir código de manera eficiente al realizar la transición entre dos idiomas. Por ejemplo, durante la universidad, cuando estaba trabajando en un proyecto en Typescript (Angular, para ser exactos), mantuve su documentación abierta en un navegador, lista para cuando encontrara un vacío en mi conocimiento. Si bien los lenguajes Typescript son similares a JavaScript, descubrí que había una curva de aprendizaje suficiente entre los dos idiomas para que tener la documentación a mano en todo momento hiciera que la transición fuera mucho más fluida. Sin embargo, siempre descubrí que crear mi propia documentación o Las hojas de trucos son un millón de veces más valiosas que buscar documentación técnica, sin importar cuán bien escrita esté. ¿Sabes cómo terminas estudiando inconscientemente mientras creas hojas de trucos o guías de estudio, incluso si no lo sientes así? Lo mismo se aplica al crear guías de referencia, documentación, hojas de cálculo o guías de estudio para Python y R. He visto algunas hermosas hojas de referencia compartidas en LinkedIn que condensan una gran cantidad de conocimiento en una sola hoja de papel de 8,5 x 11 que puede imprimir y tener a su lado en todo momento. Estas hojas de referencia se pueden usar como inspiración y punto de partida para comenzar a crear sus propias hojas de trucos y documentación que pueden ayudarlo a hacer la transición entre Python y R. Me gusta incluir fragmentos de código, fórmulas, información de funciones y descripciones de paquetes en mi referencia. hojas para diferentes lenguajes de programación. Crear su propia hoja de referencia o capturar la de otra persona puede tomar menos de 10 minutos y puede ahorrarle la necesidad de tener que memorizar las complejidades de Python y R. Hablar con acento mientras trabaja en un nuevo lenguaje natural es lindo. Codificar con acento no lo es. Lo he dicho antes y lo diré de nuevo: no te sirve de nada codificar con un idioma como si fuera otro idioma. Cuando codificas en un idioma que no lo usas de la forma en que se pretendía, será ilegible para cualquier otra persona que lo use, no se ejecutará de la forma en que se pretendía que se ejecutara o, lo que es peor, ni siquiera sabrá qué es lo que le está pidiendo que haga. Familiarizarse profundamente con el diseño único de Python y R, sus convenciones y sus fortalezas y debilidades lo ayudará a escribir código en cada idioma al máximo de su potencial. Aquí es donde tener hojas de referencia rápida (consulte el consejo 4 anterior) puede ser útil, ya que le brindan la sintaxis correcta, las convenciones de variables y el formato estándar para el idioma en el que está trabajando. Python y R son bastante diferentes cuando se trata de a su sintaxis, formato y convenciones, por lo que tener una guía de referencia puede ser útil para evitar que se deslice hacia la codificación con acento. Mi forma favorita de asegurarme de que no estoy codificando con acento es configurar una alarma por cada media hora u hora de trabajo que completo que me recuerda verificar la fluidez de mi código. Esta verificación de código toma menos de 10 minutos y es solo un recordatorio para que revise la sintaxis, las convenciones y el formato para asegurarse de que está escribiendo Python mientras trabaja en Python o que está escribiendo R mientras trabaja en R.