2012-03-25 14 views
12

¿Cómo puedo usar el paquete R randomForest con pesos de observación? Sé que no hay tal opción en este paquete. Tengo 2 preguntas:Incorporación de pesos de observación en el paquete randomForest

  1. ¿Existe alguna solución a este problema usando randomForest paquete? En este momento estoy tomando muestras a partir de datos con pesas como la probabilidad por lo que al menos puedo simularlo:

    m = dim(data)[1] 
    sample(data, m, replace=TRUE, prob=weights) 
    

    Funciona ¿Hay otras soluciones (mejor)?

  2. ¿Hay alguna alternativa al paquete randomForest? Encontré el paquete party (cforest) pero es terrible en términos de administración de memoria (o no puedo usarlo de la misma manera que uso el paquete randomForest). Tengo alrededor de 200k observaciones y 30-40 variables.

EDIT:

Lo siento por no aclarar los detalles. Estoy usando el paquete randomForest para el problema de regresión (no clasificación). Es una serie temporal y cada observación tiene su peso. Más tarde, este peso se usa para determinar el rendimiento del modelo en las observaciones de prueba. La variable y es continua.

+0

podrían encontrar más interés en http://stats.stackexchange.com –

Respuesta

1

randomForest tiene un parámetro "classwt" que debería permitirle tener en cuenta las probabilidades de muestreo diferencial o incluso los costos diferenciales. Es cierto que se ignora con la regresión Tal vez debería explicar por qué necesita usar la ponderación y qué tipo de variable y está utilizando.

1

Estaba buscando la misma opción que Pawel en el Bosque Aleatorio. Y descubrí que el paquete "ranger" en R lo incorpora en la función "ranger" (a través del parámetro "case.weights").

El paquete se lanzó en junio de 2016, por lo que es muy joven.

mejor,

+0

Me acabo de descubrir randomForestSRC también incluyó un parámetro case.wt en su versión 2.2.0. ¡Vea 'rfsrc.news()' con una versión reciente de randomForestSRC instalado! ¡Esta solución puede ser más segura ya que randomForestSRC es un paquete ampliamente utilizado! Mejor, – Ooona

Cuestiones relacionadas