Foro de debate

Lenguaje R programación orientada a objetos

Lenguaje R programación orientada a objetos

de Enrique Muñoz Guerra -
Número de respuestas: 3

Estimados buenos dias. Favor su apoyo en lo siguiente. Deseo una plantilla, en la cual se pueda realizar una programacion orientada a objetos usando el codigo R. Según lo revisado "R" permite programar de forma estructurada pero tambien utiliza la programacion orientada a objetos usando clases. Favor su apoyo en la explicación y plantilla correspondiente donde pueda visualizar dicho codigo. Muchas gracias por su atención prestada

Saludos

En respuesta a Enrique Muñoz Guerra

Re: Lenguaje R programación orientada a objetos

de Manuel Muñoz Márquez -

Buenas:

En R todo son objetos. Esto es lo que permite que una función se pueda pintar con la misma función que una secuencia de números.

Por ejemplo,

plot(cos)

pinta una función

Función coseno

plot(1:10)

Secuenciapinta una secuencia.

R está comprobando el tipo de objeto que recibe la función plot y llama a la versión adecuada. Así en el primer caso está llamando a la función plot.function y en el segundo a plot.default

Existen varios sistemas de objetos o clases en R, el más sencillo son las clases S3. Estas clases son sencillas de usar pero no existe prototipado ni comprobación de la validez de los objetos creados. Existe multitud de documentación en la web.

En cualquier caso la programación orientada a objetos de R difiere bastante de las que se usan en otros lenguajes de programación.

Tal vez si pone un ejemplo de lo que quiere hacer se le pueda ayudar más.

Un saludo.

En respuesta a Manuel Muñoz Márquez

Re: Lenguaje R programación orientada a objetos

de Enrique Muñoz Guerra -

Lo que me refiero si es que se puede realizar la programacion orientada a objetos como java, en la cual crea una clases y estas tiene propiedades y metodos asignados.

EJEMPLO:

public class Carro{

   String marca;

   int kilometraje;

   String color;

   void encender(){

   }

   void acelerar(){

   }

   void apagar(){

   }

}


Seguido de ello en otro archivo u hoja de codificiacion  procede a invocar a dicho objeto creado

public static void main(String []args){

      // Creamos la variable carro

      Carro miCarro = new Carro( "Ford" );


Favor su apoyo en proporcionar una plantilla o los pasos a realizar para que dicha codificacion en en lenguaje R se considere una programacion orientada a objetos como los lenguajes java o .net, etc

En respuesta a Enrique Muñoz Guerra

Re: Lenguaje R programación orientada a objetos

de Manuel Muñoz Márquez -

Buenas Enrique:

Sí, mi comentario anterior responde a dicha pregunta.

Si tiene bastante experiencia programando te recomiendo que uses las clases S4, son las que se recomiendan para los nuevos desarrollos. Un tutorial para las clases S4 podría ser S4 Advanced R o este A (Not So) Short Introduction to S4 V0.5.1

Si su experiencia es limitada le recomiendo que use las clases S3. Un tutorial podría ser S3 Advanced R.

Además de las anteriores están las clases R5 con las que no tengo experiencia.

Todos estos tipos de clases conviven en R sin que el uso de una de ellas impida el uso simultáneo de las otras.

Un saludo.