La producción cinematográfica constituye una de las actividades económicas con mayor exposición al riesgo dentro de las industrias creativas. Cada película representa un proyecto de inversión que exige desembolsos cuantiosos y mayoritariamente irrecuperables, son costos hundidos, antes de que el producto genere ingreso alguno, mientras que su retorno permanece profundamente incierto hasta su estreno comercial. De Vany & Walls (1999) demostraron empíricamente, a partir de una muestra superior a dos mil películas, que la distribución de los ingresos de taquilla es asintóticamente paretiana y exhibe varianza infinita: la media se encuentra dominada por un número reducido de éxitos extraordinarios (blockbusters) ubicados en la cola derecha de la distribución, de modo que no existe una “película típica” cuyos resultados converjan hacia un promedio estable (pp. 1-2). Esta característica sintetiza la conocida máxima de la industria según la cual “nadie sabe nada” (nobody knows anything), en alusión a la dificultad estructural de anticipar qué proyectos resultarán rentables (p. 21).
El interés analítico de esta investigación surge precisamente de esa incertidumbre. Una productora cinematográfica que evalúa dar luz verde a un guion enfrenta un problema de optimización de la inversión: debe decidir no solo cuáles proyectos financiar, sino cuánto capital comprometer en ellos, con el fin de gestionar el riesgo financiero de la decisión. Este es el problema del green-lighting. El estudio más directamente relacionado al presente es el de Deniz & Hasbrouck (2012), titulado precisamente When to Greenlight, que examina qué factores disponibles en la fase de producción, que son anteriores al estreno, determinan el éxito comercial; sus autores confirman que variables como el presupuesto y el género son predictores significativos de los ingresos, y subrayan que la utilidad práctica de un modelo para el inversionista depende de que sus predictores estén disponibles al momento de decidir. Desde una perspectiva complementaria, Jamshidi & McDaniel (2020) demuestran la relevancia contemporánea de los modelos de regresión para pronosticar la asistencia a salas. La literatura especializada (De Vany & Walls, 1999, 2004; Ravid, 1999) coincide en que, si bien la varianza de los resultados es irreductiblemente alta, existen correlatos sistemáticos del éxito comercial cuya estimación constituye un insumo valioso, aun cuando ningún modelo elimine la aleatoriedad inherente al negocio.
Modelar fenómenos económicos con el propósito de generar análisis que sean de especial interés en la formulación de pronósticos y parámetros de importancia para la caracterización del mismo.
Especificar un modelo econométrico formal que permita explicar el desempeño financiero en taquilla a partir de un conjunto de variables, mediante la identificación de la variable exógena y sus variables explicadoras, con fundamento teórico.
Estimar el modelo por Mínimos Cuadrados Ordinarios, verificando los supuestos del Modelo Clásico de Regresión Lineal Múltiple mediante pruebas formales.
Realizar una simulación con mínimo 5,000 iteraciones para evaluar las medidas de desempeño predictivo del modelo, con el fin de proporcionar un pronóstico robusto de los ingresos en taquilla que sirva de apoyo a la productora cinematográfica antes de aprobar un guión.
El marco conceptual que articula esta investigación parte de la
teoría de los bienes de experiencia formulada por Nelson (1970), como se citó en
McClure & Spector (1991). Este autor distinguió
entre los bienes de búsqueda (search goods), cuya utilidad
puede evaluarse mediante inspección previa a la compra, y los bienes de
experiencia (experience goods), cuya utilidad solo se revela
tras el consumo (p. 2). La película constituye un ejemplo muy claro de
un bien de experiencia: el espectador no puede conocer con certeza la
utilidad que le reportará el filme antes de adquirir su entrada y verlo
(p. 2).
De esta naturaleza se deriva una doble asimetría de información. Por un lado, el consumidor enfrenta incertidumbre sobre la calidad del producto en el momento de decidir su compra, por lo que su demanda depende de las señales observables (quality signals) que le permiten formar expectativas (McClure & Spector, 1991, p. 2). Por otro lado, y de manera central para esta investigación, el propio productor enfrenta incertidumbre sobre la respuesta del mercado y debe fundamentar su decisión de inversión en los atributos predeterminados del proyecto, es decir, en aquellas características conocidas o decididas con anterioridad al estreno. La identificación de estos atributos observables y la cuantificación de su efecto sobre los ingresos constituyen el núcleo teórico de los modelos econométricos de taquilla orientados al pronóstico.
En la etapa de guion, la decisión más fundamental que enfrenta una
productora es la elección del género cinematográfico, pues este define
la naturaleza misma del producto antes que cualquier otra determinación.
El género es un atributo fijo e intrínseco del guion y, a la vez, uno de
los determinantes del desempeño en taquilla más consistentemente
documentados por la literatura desde el estudio de Litman (1983). Deniz & Hasbrouck (2012) abordan esta cuestión
directamente en el contexto del green-lighting: mediante el
análisis de las ciento cincuenta películas de mayor recaudación en
Estados Unidos durante 2010, y restringiendo el estudio a factores
predeterminados anteriores al estreno, identifican que las variables de
género representan seis de los trece predictores significativos del
ingreso bruto en taquilla (p. 35). Su trabajo proporciona la base
empírica más directamente relevante para la especificación propuesta,
dado que su pregunta de investigación es idéntica a la del presente
estudio: ¿qué factores, observables durante la fase de producción,
determinan el éxito comercial de una película?
Los hallazgos de Deniz & Hasbrouck (2012) revelan un perfil
diferenciado por género. La aventura registra la correlación más alta
entre los géneros y los ingresos de taquilla (\(r = 0.528\)), mientras que la animación
(\(r = 0.405\)), la fantasía (\(r = 0.387\)) y el cine familiar (\(r = 0.340\)) también presentan
correlaciones positivas y significativas (p. 39). En el modelo de
regresión, la presencia del género aventura se asocia con un incremento
de aproximadamente 31 millones de dólares en la recaudación, y la
animación con un incremento de 52 millones (p. 40). En contraste, el
drama se correlaciona negativamente con los ingresos brutos (\(r = −0.227\)), lo que indica que, pese a
ser el género más prolífico en número de producciones, su desempeño
comercial es comparativamente menor (p. 39). La clasificación R registra
asimismo una correlación negativa (\(r =
−0.294\)), lo que sugiere que el contenido orientado
exclusivamente a audiencias adultas restringe el alcance comercial de
una producción (p. 39).
El terror constituye un caso particular que ilustra la importancia de
distinguir entre ingresos brutos y rentabilidad relativa. Deniz & Hasbrouck (2012) encuentran que el
terror no es un predictor significativo de los ingresos absolutos de
taquilla, pero sí es el único género con correlación positiva y
significativa en el modelo de la razón ingreso-presupuesto: un filme de
terror aporta aproximadamente 6.5 dólares de recaudación por cada dólar
invertido (p. 40). Este resultado refleja la estructura característica
del género, que tiene costos de producción reducidos frente a una
demanda estable en su segmento de audiencia.
Por tratarse de un atributo definido en la concepción del guion, pues se hace anterior a la producción y al estreno, el género es un regresor predeterminado y constituye, junto con la magnitud de la inversión, uno de los dos ejes centrales de la especificación propuesta. La evidencia empírica de Deniz & Hasbrouck (2012) orienta la selección de dummies hacia los géneros con perfiles de demanda diferenciados: aventura, animación, fantasía, ciencia ficción y acción como categorías con efecto positivo esperado sobre los ingresos; terror como categoría con efecto positivo sobre la rentabilidad relativa pero ambiguo sobre la recaudación bruta; y drama como categoría de referencia, dado su desempeño comparativamente menor.
Una vez definida la naturaleza del guion, la productora enfrenta su
decisión de inversión: cuánto capital comprometer en la producción. El
presupuesto es, por tanto, la variable que la empresa busca optimizar y
no un atributo dado del proyecto. Su tratamiento en el modelo refleja
esta condición: el presupuesto opera como la palanca de decisión cuyo
efecto sobre los ingresos la empresa necesita anticipar.
Entre los atributos predeterminados de una película, el presupuesto
de producción ocupa un lugar central en la literatura empírica. El
estudio de Litman (1983), como se citó en Jamshidi & McDaniel (2020) fue pionero en
estimar al presupuesto de producción dentro de los factores asociados al
éxito comercial de las películas (p. 15), trabajos posteriores
confirmaron de manera consistente que el presupuesto figura entre los
predictores más robustos de los ingresos (Ravid, 1999) y Deniz & Hasbrouck (2012, p. 39) reportan que es
la variable con la correlación más alta con los ingresos (\(r = 0.706\)). Esta regularidad admite una
interpretación económica precisa: el presupuesto no solo financia mayor
calidad técnica, como efectos visuales, locaciones, dirección y
producción de mayor nivel, sino que además constituye una señal de
calidad comprometida (committed quality signal) que el estudio
envía al mercado (Ravid, 1999, p. 465). Un
desembolso elevado comunica de forma creíble la confianza del estudio en
el proyecto, expectativa que se refuerza mediante presupuestos de
marketing y estrategias de distribución de mayor alcance, habitualmente
proporcionales a la inversión de producción.
Especificado en forma logarítmica, el coeficiente del presupuesto
adquiere una interpretación directamente útil para la decisión de
inversión: representa la elasticidad ingreso-presupuesto, esto es, la
variación porcentual esperada en los ingresos ante un incremento de 1 %
en la inversión. Un valor inferior a la unidad indicaría rendimientos
decrecientes a la inversión, y uno superior, rendimientos crecientes.
Este parámetro es el núcleo del modelo entendido como función de
respuesta de los ingresos.
Para los fines de esta investigación, el presupuesto presenta una ventaja metodológica decisiva: es una variable predeterminada. Se fija antes del estreno y, por lo tanto, antecede causalmente a los ingresos sin depender de ellos, lo que lo convierte en un regresor exógeno respecto de la variable endógena.
Además del género y la inversión, la literatura documenta el efecto
de otras características de contenido y de posicionamiento que el
productor define ex ante. - La duración del filme refleja el
formato y la escala de la producción; si bien las producciones de mayor
envergadura tienden a presentar filmes más extensos, una mayor duración
también reduce el número de funciones diarias programables en sala, lo
que torna ambiguo su efecto neto sobre los ingresos.
El idioma original de la película opera como una aproximación al
alcance de mercado. Las producciones en inglés acceden de forma natural
al circuito de exhibición global y a los mercados internacionales de
mayor tamaño La relevancia de los mercados internacionales en la
conformación de los ingresos totales ha sido destacada por Elberse & Eliashberg (2003), quienes analizaron la
dinámica de la demanda en el lanzamiento secuencial de películas a
través de distintos mercados (p. 330).
El momento del estreno, constituye un tercer factor de
posicionamiento. Einav (2007) demostró la existencia
de una marcada estacionalidad en la industria estadounidense, asociada a
que los mayores estrenos se concentran en los períodos de mayor demanda,
como el verano y las temporadas de fin de año , lo que amplifica la
estacionalidad subyacente del mercado (p. 128). En consecuencia, el
período del año en que se estrena una película incide sobre su desempeño
esperado.
Finalmente, conviene señalar que un determinante intuitivamente atractivo, el poder de las estrellas (star power), ha recibido escaso respaldo empírico. Ravid (1999) y Elberse (2007) coinciden en que la participación de estrellas no constituye un predictor confiable de los ingresos ni de la rentabilidad, sin embargo Deniz & Hasbrouck (2012, p. 39) matizan lo determinante que es está variable, pues tiene correlación con los ingresos (\(r = 0.285\)), pero menor a la que tiene el presupuesto (\(r = 0.706\)), los géneros de aventura, animación o fantasía y es menos determinante que si la película es una secuela (\(r = 0.37\)). Esta evidencia respalda la decisión de centrar la especificación en la inversión y en los atributos de contenido y posicionamiento, antes que en características del elenco.
El marco teórico expuesto articula la especificación como una función de respuesta de los ingresos: el desempeño financiero de una película —sujeto a incertidumbre extrema— se modela en función de la inversión comprometida, condicionada a los atributos fijos del guion y a las decisiones de posicionamiento. La estructura del modelo reproduce la secuencia de decisiones de la productora: la elección del género (el guion), el nivel de inversión a optimizar (el presupuesto) y las decisiones de formato, mercado y timing. Sobre esta base se formulan las siguientes hipótesis de investigación:
\(H_0\): \(\beta_1 = 0\) — el presupuesto no influye
sobre los ingresos.
\(H_1\):
\(\beta_1 > 0\) — el presupuesto
influye positivamente; su valor estima la elasticidad
ingreso-presupuesto, parámetro central para la optimización de la
inversión.
\(H_0\): \(\gamma_1 = \gamma_2 = \gamma_3 = \gamma_4 =
\gamma_5 = 0\) — el género no aporta poder explicativo.
\(H_1\): al menos un \(\gamma_j \neq 0\) — el bloque de género es
conjuntamente significativo.
Sub-contrastes individuales (prueba \(t\)): para aventura, animación, acción y ciencia ficción/fantasía, \(H_1\colon \gamma_j > 0\) (una cola); para terror, \(H_1\colon \gamma_5 \neq 0\) (dos colas, por su recaudación bruta incierta).
\(H_0\): \(\beta_2 = 0\) — la duración no influye
sobre los ingresos.
\(H_1\):
\(\beta_2 \neq 0\) — la duración
influye, en dirección no determinada a priori.
\(H_0\): \(\beta_3 = 0\) — el idioma inglés no influye
sobre los ingresos.
\(H_1\):
\(\beta_3 > 0\) — las películas en
inglés recaudan más por su acceso al circuito global.
\(H_0\): \(\beta_4 = 0\) — la temporada de estreno no
influye sobre los ingresos.
\(H_1\): \(\beta_4
> 0\) — el estreno en temporada alta se asocia con mayores
ingresos.
\(H_0\): \(\beta_5 = 0\) — el año de estreno no
influye sobre los ingresos.
\(H_1\): \(\beta_5
\neq 0\) — el año influye, en dirección dependiente de las
tendencias del período 2005–2019.
\(H_0\): \(\beta_1 = \beta_2 = \beta_3 = \beta_4 = \beta_5 =
\gamma_1 = \cdots = \gamma_5 = 0\) — ningún regresor explica los
ingresos.
\(H_1\): al menos un
coeficiente \(\neq 0\) — el modelo en
conjunto es significativo.
Como se detalló en la hipótesis 2, se hará una prueba \(F\) parcial sobre el bloque de género (\(H_0\colon \gamma_1 = \cdots = \gamma_5 = 0\)) responderá la pregunta central de la productora: si el tipo de historia incide sobre los ingresos. Una segunda prueba \(F\) parcial sobre las variables de posicionamiento (\(H_0\colon \beta_2 = \beta_3 = \beta_4 = 0\)) permitirá determinar si las decisiones de formato, mercado y timing aportan poder explicativo más allá del presupuesto y el género.
La selección se basa de partida por el criterio derivado del problema
de investigación: el modelo se concibe como una función de respuesta de
los ingresos orientada a una decisión de inversión que la productora
toma antes de dar luz verde a un guion. Toda variable incorporada debe
satisfacer dos condiciones.
La predeterminación: debe ser conocida o decidida con anterioridad al estreno y no estar determinada simultáneamente con los ingresos, de modo que esté disponible al momento de la decisión y no introduzca endogeneidad.
La relevancia teórica y empírica: debe contar con respaldo en la literatura como determinante del desempeño en taquilla. Este criterio preserva tanto la utilidad práctica del modelo como su validez econométrica, al evitar la inclusión de variables cuya simultaneidad con la variable endógena violaría el supuesto de exogeneidad del Modelo Clásico de Regresión Lineal Muúltiple.
La variable endógena es el logaritmo natural de la recaudación bruta en taquilla, \(\ln(\text{revenue}_i)\), medida en dólares estadounidenses. La elección de la recaudación, y no de la utilidad o la rentabilidad, responde al enunciado del problema. La transformación logarítmica obedece a tres razones: reduce la marcada asimetría positiva de los ingresos, congruente con la distribución paretiana documentada por De Vany & Walls (1999); estabiliza la varianza; y combinada con el logaritmo del presupuesto, otorga al coeficiente respectivo una interpretación de elasticidad directamente útil para la decisión de inversión.
Es el regresor protagónico del modelo, por tres motivos convergentes: es la variable que la productora decide y busca optimizar; es el predictor más robusto de la recaudación en la literatura: Ravid (1999) y Litman (1983) lo identifican como determinante central, y Deniz & Hasbrouck (2012) reportan que es la variable de mayor correlación con los ingresos (\(r = 0.706\)); y opera como señal de calidad comprometida hacia el mercado (McClure & Spector, 1991). Se incorpora en forma logarítmica, de modo que su coeficiente \(\beta_1\) estima la elasticidad ingreso-presupuesto. Signo esperado: \(\beta_1 > 0\) (\(+\)).
El género es el atributo fundamental del guion y la primera decisión
que enfrenta la productora. Deniz & Hasbrouck
(2012) identifican las
variables de género como seis de los trece predictores significativos de
la recaudación en su muestra de referencia.
La definición del bloque siguió un proceso de especificación empírica
sobre la muestra de trabajo (2005–2019, \(n =
4{,}040\)). Inicialmente se consideró desagregar la ciencia
ficción y la fantasía en dummies independientes. El diagnóstico
de multicolinealidad descartó cualquier problema técnico (VIF = 1.11 en
ambas), pero la conveniencia de la desagregación se evaluó mediante
criterios de información: AIC y BIC favorecieron la especificación
parsimoniosa con una dummy combinada (\(\Delta\text{AIC} = 1.43\); \(\Delta\text{BIC} = 7.73\), evidencia fuerte
según Kass & Raftery (1995)). Se adoptó, por tanto, una
dummy conjunta de ciencia ficción/fantasía.
El bloque final comprende cinco indicadores: aventura (\(\gamma_1\)), animación (\(\gamma_2\)), acción (\(\gamma_3\)), ciencia ficción/fantasía (\(\gamma_4\)) y terror (\(\gamma_5\)), con el drama como categoría de referencia. Signos esperados: positivos (\(+\)) para \(\gamma_1,\gamma_2,\gamma_3,\gamma_4\); ambiguo (\(\pm\)) para \(\gamma_5\) (rentable en términos relativos, pero de recaudación bruta incierta).
Variable dicotómica que aproxima el alcance de mercado: las producciones en inglés acceden al circuito de exhibición global, frente a las circunscritas a nichos lingüísticos (Elberse & Eliashberg, 2003). Signo esperado: \(\beta_3 > 0\) (\(+\)).
Aproximación al formato y la escala de la producción, incorporada en nivel (minutos). Su efecto es ambiguo: las producciones de mayor envergadura tienden a metrajes prolongados, pero una mayor duración reduce las funciones diarias en sala. Signo esperado: \(\beta_2 \gtrless 0\) (\(\pm\)).
Variable dicotómica que identifica los estrenos en temporada alta (verano: meses 5–8; fin de año: meses 11–12), períodos de mayor demanda según Einav (2007). Signo esperado: \(\beta_4 > 0\) (\(+\)).
Capta la tendencia temporal del mercado dentro de la ventana 2005–2019, controlando por factores agregados que evolucionan en el tiempo. Signo esperado: \(\beta_5 \gtrless 0\) (\(\pm\)).
Las métricas de recepción (vote_average,
vote_count, popularity) se excluyen como regresores
por simultaneidad: Duan et al. (2008) demostraron que el boca a
boca es a la vez causa y consecuencia de las ventas, y Liu (2006) que su
volumen explica la mayor parte de la variación en ingresos.
Incorporarlas generaría endogeneidad por simultaneidad, sesgo no
corregible mediante estimadores HAC. Adicionalmente, no están
disponibles al momento de la decisión de financiamiento.
El doble rol de vote_count. Esta variable se excluye como
regresor por las razones anteriores, pero se emplea como filtro de
calidad del dato durante la depuración de la muestra —un rol
metodológicamente distinto—. El conjunto de datos, de contribución
abierta, contiene entradas ficticias con ingresos fabricados; toda
película con recaudación real fue vista por miles de personas que
generan votos en la plataforma. Se estableció un umbral mínimo (\(\text{vote\_count} \geq 10\)) para
descartar registros espurios, tras inspeccionar la distribución completa
(umbral elegido entre 1.286 observaciones descartadas y 8.884
conservadas).
El elenco y el star power no figuran en los datos y han mostrado escaso poder predictivo (Elberse, 2007; Ravid, 1999). Los campos de identificación, textos libres y variables de alta cardinalidad no constituyen determinantes teóricos directos. Las variables status y adult se emplean como criterios de filtrado; release_date se transforma en año y temporada.
| Variable | Símbolo | Definición operativa | Tipo | Transformación | Signo esperado |
|---|---|---|---|---|---|
| Recaudación | \(\ln(\text{revenue}_i)\) | Ingreso bruto en taquilla (USD) | Continua | Log natural | (endógena) |
| Presupuesto | \(\ln(\text{budget}_i)\) | Costo de producción (USD) | Continua | Log natural | \(+\) |
| Duración | \(\text{runtime}_i\) | Duración del filme (minutos) | Continua | Nivel | \(\pm\) |
| Idioma inglés | \(\text{english}_i\) | \(1\) si
original_language = "en" |
Dummy | — | \(+\) |
| Temporada alta | \(\text{season}_i\) | \(1\) si estrena en verano o fin de año | Dummy | — | \(+\) |
| Año | \(\text{year}_i\) | Año de estreno | Continua | Nivel (tendencia) | \(\pm\) |
| Aventura | \(\text{adventure}_i\) | \(1\) si el género incluye
Adventure |
Dummy | — | \(+\) |
| Animación | \(\text{animation}_i\) | \(1\) si el género incluye
Animation |
Dummy | — | \(+\) |
| Acción | \(\text{action}_i\) | \(1\) si el género incluye
Action |
Dummy | — | \(+\) |
| Ciencia ficción / fantasía | \(\text{scifi\_fantasy}_i\) | \(1\) si incluye
Science Fiction o Fantasy |
Dummy | — | \(+\) |
| Terror | \(\text{horror}_i\) | \(1\) si el género incluye
Horror |
Dummy | — | \(\pm\) |
En un modelo con variables dicotómicas, la categoría de referencia (o
categoría base) es el grupo de observaciones que no recibe ninguna
dummy y contra el cual se interpretan todos los coeficientes
del bloque. El intercepto \(\beta_0\)
recoge el valor esperado de la variable dependiente cuando todas las
dummies valen cero, de modo que cada coeficiente \(\gamma_j\) mide el diferencial esperado de
pertenecer al género \(j\) respecto de
esa base. La elección de la referencia no altera el ajuste del modelo ni
sus predicciones, pero determina el significado de cada coeficiente, por
lo que debe escogerse de modo que las comparaciones resulten
económicamente interpretables.
¿Por qué se denomina drama? Esta categoría se rotula como drama por tres razones convergentes:
Razón empírica. El drama es, con amplio margen, el
género más frecuente entre las películas que no portan ninguna de las
cinco etiquetas focales, por lo que constituye el componente dominante y
representativo de la base (su composición se caracteriza empíricamente
en la sección de operacionalización).
Razón económica. El drama es el género de menor
recaudación esperada entre los géneros principales: Deniz & Hasbrouck (2012) reportan una
correlación negativa entre el drama y los ingresos brutos (\(r = -0.227\)). Esto lo convierte en un piso
natural contra el cual medir el sobredesempeño de los géneros de
espectáculo.
Razón conceptual. El drama es la película “por defecto”,
centrada en el personaje y el diálogo, que no depende de los elementos
de espectáculo, como efectos visuales, escala de producción, secuencias
de acción, que definen a los géneros incluidos. Representa el filme de
bajo concepto frente al cual el género opera como factor
diferenciador.
Consecuencia para la interpretación. Cada \(\gamma_j\) estima la diferencia porcentual
esperada en la recaudación entre una película que porta el género \(j\) y una película base, predominantemente
un drama, que no porta ninguna de las cinco etiquetas focales,
manteniendo constantes el presupuesto, la duración, el idioma, la
temporada y el año. Así, un coeficiente positivo para la aventura indica
que, a igualdad de inversión y demás características, una película de
aventura recauda más que un drama comparable.
Precisión sobre el alcance de la denominación. Dado el carácter multi-etiqueta de las variables, la base no se compone exclusivamente de dramas: incluye también comedias, romances, suspensos, documentales y otros géneros no capturados por las cinco dummies. La etiqueta drama se emplea por ser el integrante modal y económicamente representativo de la base, pero la interpretación estrictamente correcta de los coeficientes es “respecto de una película sin ninguna de las cinco etiquetas focales”. Esta heterogeneidad es una característica, no un defecto, de la especificación multi-etiqueta, adoptada por preservar la información de las películas que pertenecen a varios géneros, en línea con la literatura especializada (Deniz & Hasbrouck, 2012). La alternativa de asignar a cada película un único “género primario” produciría una base homogénea, pero descartaría información genuina —una película que es a la vez de acción y de aventura lo es en ambos sentidos— y exigiría una asignación en buena medida arbitraria.
La relación funcional general se expresa como:
\[ \text{revenue} = f \left( \text{budget}, \,\, \text{runtime}, \,\, \text{english}, \,\,\text{season}, \,\, \text{year}, \,\,\sum_{j=1}^{5}\gamma_j\,\text{genre}_{ji} \right). \]
La elección de la forma funcional responde a tres consideraciones:
Tanto la recaudación como el presupuesto exhiben una fuerte asimetría positiva, congruente con la distribución paretiana descrita por De Vany & Walls (1999); la transformación logarítmica reduce esa asimetría, estabiliza la varianza y atenúa la influencia de valores extremos.
El par log–log entre recaudación y presupuesto otorga al coeficiente \(\beta_1\) una interpretación de elasticidad constante, que es precisamente el parámetro que la productora necesita para optimizar su inversión.
Las demás variables ingresan en nivel, generando una especificación semilogarítmica de interpretación directa.
El modelo matemático-estadístico (componente determinística) es:
\[ \ln(\text{revenue}_i) = \beta_0 + \beta_1 \ln(\text{budget}_i) + \beta_2\,\text{runtime}_i + \beta_3\,\text{english}_i + \beta_4\,\text{season}_i + \beta_5\,\text{year}_i + \sum_{j=1}^{5}\gamma_j\,\text{genre}_{ji}. \]
La interpretación de cada parámetro se deriva de la forma funcional:
\(\beta_1\) — elasticidad ingreso-presupuesto: un aumento de 1% en el presupuesto se asocia con un cambio de \(\beta_1\%\) en la recaudación. Si \(0 < \beta_1 < 1\), la inversión presenta rendimientos decrecientes; si \(\beta_1 > 1\), crecientes.
\(\beta_2\) — efecto semilogarítmico de la duración: un minuto adicional se asocia con un cambio aproximado de \(100\,\beta_2\%\) en la recaudación.
\(\gamma_j\) — efecto de pertenecer al género \(j\) frente a la categoría base (drama): el cambio porcentual exacto es \(\left(e^{\gamma_j}-1\right)\times 100\%\).
\(\beta_3,\ \beta_4\) — efectos de las variables dicotómicas: cambio exacto de \(\left(e^{\beta}-1\right)\times 100\%\) respecto a la categoría omitida.
\(\beta_5\) — tendencia temporal: cambio porcentual anual aproximado de \(100\,\beta_5\%\).
Las restricciones de signo derivadas del marco teórico son:
\[ \beta_1 > 0,\quad \beta_3 > 0,\quad \beta_4 > 0,\quad \gamma_1,\,\gamma_2,\,\gamma_3,\,\gamma_4 > 0, \] \[ \beta_2 \gtrless 0,\quad \beta_5 \gtrless 0,\quad \gamma_5 \gtrless 0. \]
El presupuesto, el idioma inglés, la temporada alta y los géneros de mayor demanda (aventura, animación, acción, ciencia ficción y fantasía) tienen efecto positivo esperado. La duración y el año presentan signo ambiguo a priori. El terror tiene efecto positivo sobre la rentabilidad relativa pero ambiguo sobre la recaudación bruta (Deniz & Hasbrouck, 2012).
El modelo estocástico incorpora la perturbación aleatoria \(\epsilon_i\), que recoge los determinantes no observados de la recaudación:
\[ \ln(\text{revenue}_i) = \beta_0 + \beta_1 \ln(\text{budget}_i) + \beta_2\,\text{runtime}_i + \beta_3\,\text{english}_i + \beta_4\,\text{season}_i + \beta_5\,\text{year}_i + \sum_{j=1}^{5}\gamma_j\,\text{genre}_{ji} + \epsilon_i. \]
En notación matricial, con \(n\) observaciones y \(k\) parámetros:
\[ \mathbf{y} = \mathbf{X}\boldsymbol{\beta} + \mathbf{\epsilon}, \]
donde \(\mathbf{y}\) es el vector
\(n\times 1\) de \(\ln(\text{Revenue})\), \(\mathbf{X}\) la matriz \(n\times k\) de regresores (incluida la
constante), \(\boldsymbol{\beta}\) el
vector \(k\times 1\) de parámetros y
\(\mathbf{\epsilon}\) el vector \(n\times 1\) de perturbaciones.
El
estimador mínimo cuadrático es \(\hat{\boldsymbol{\beta}} =
(\mathbf{X}^T\cdot\mathbf{X})^{-1}\mathbf{X}^T\cdot\mathbf{y}\).
Para que el estimador mínimo cuadrático sea el Mejor Estimador Lineal (MELI), deben cumplirse los siguientes supuestos:
El siguiente bloque documenta y ejecuta la construcción de las variables a partir del conjunto de datos IMDB, junto con los criterios de depuración derivados de la exploración: autenticidad del registro mediante el número de votos, exclusión de presupuestos inventados (placeholder) y delimitación a largometrajes.
library(tidyverse)
library(lubridate)
# ============================================================
# OPERACIONALIZACIÓN DE VARIABLES
# ============================================================
# 1. Carga----------------------------------------------------------------------
datos_raw <- read_csv("C:/Users/harold/Desktop/Imdb Movie Dataset.csv")
# 2. Parámetros de limpieza
# UMBRAL_VOTOS: criterio de autenticidad. El dataset, de contribución
# abierta, contiene entradas ficticias con revenue fabricado (p. ej., películas
# con miles de millones de dólares en recaudación con 1 voto). Toda película con
# ingresos reales fue vista por miles de personas, una fracción de las cuales
# vota en IMDB. El umbral se fijó en 10 tras inspeccionar la distribución.
# NOTA: vote_count se emplea SOLO como filtro de calidad del dato; se
# excluye como regresor por simultaneidad con revenue.
UMBRAL_VOTOS <- 10
placeholders_budget <- c(1, 100, 1000, 1e4, 1e5, 1e6, 1e7, 1e8, 999999999)
# 3. Filtrado y construcción ---------------------------------------------------
datos <- datos_raw %>%
filter(
status == "Released", # estrenos confirmados
revenue > 100, # descarta los
# registros con revenue <= $100 (placeholders
# o errores; ningún estreno real recauda tan
# poco). NO descarta estrenos de nicho legítimos.
budget > 0, # presupuesto válido
runtime >= 60, # largometrajes (no cortos/TV)
adult == FALSE, # excluye contenido adulto
vote_count >= UMBRAL_VOTOS, # autenticidad del registro
!budget %in% placeholders_budget # presupuestos placeholder
) %>%
mutate(
# Endógena y regresor continuo principal
ln_revenue = log(revenue),
ln_budget = log(budget),
# Posicionamiento
english = if_else(original_language == "en", 1L, 0L),
fecha = mdy(release_date), # formato M/D/YYYY
year = year(fecha),
year_c = year - 2005, # año centrado en el inicio de la ventana
month = month(fecha),
season = if_else(month %in% c(5, 6, 7, 8, 11, 12), 1L, 0L),
# Bloque de género (5 dummies; referencia: drama y demás géneros)
adventure = if_else(str_detect(genres, "Adventure"), 1L, 0L),
animation = if_else(str_detect(genres, "Animation"), 1L, 0L),
action = if_else(str_detect(genres, "Action"), 1L, 0L),
scifi_fantasy = if_else(str_detect(genres, "Science Fiction|Fantasy"), 1L, 0L),
horror = if_else(str_detect(genres, "Horror"), 1L, 0L)
) %>%
# Ventana temporal: 2005-2019 (era de mercado homogénea, datos densos).
# Se excluyen 2020-2021 (shock COVID: cierre de salas y estrenos sesgados),
# 2022 (recuperación parcial, 129 obs.) y 2023 (83 obs., sesgo de
# supervivencia: solo blockbusters registrados en IMDB).
filter(year >= 2005 & year <= 2019) %>%
drop_na(ln_revenue, ln_budget, runtime, english, season, year,
adventure, animation, action, scifi_fantasy, horror)
# 4. Muestra de trabajo: orden cronológico + columnas del modelo ---------------
datos_modelo <- datos %>%
arrange(fecha) %>%
dplyr::select(title, fecha, ln_revenue, ln_budget, runtime, english, season,
year, year_c, adventure, animation, action, scifi_fantasy, horror)
# 5. Reporte y exportación (entregable CSV) ------------------------------------
cat("Observaciones brutas: ", nrow(datos_raw), "\n")## Observaciones brutas: 1048575
## Muestra de trabajo (limpia): 4015
## Período cubierto: 2005 - 2019
## Rows: 4,015
## Columns: 14
## $ title <chr> "Standing Still", "Racing Stripes", "Elektra", "Coach Ca…
## $ fecha <date> 2005-01-02, 2005-01-06, 2005-01-13, 2005-01-14, 2005-01…
## $ ln_revenue <dbl> 9.454227, 18.323668, 17.852960, 18.155019, 15.764588, 15…
## $ ln_budget <dbl> 14.34614, 17.21671, 17.57671, 17.21671, 13.76422, 17.216…
## $ runtime <dbl> 90, 102, 97, 136, 103, 106, 109, 95, 71, 118, 103, 101, …
## $ english <int> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1,…
## $ season <int> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
## $ year <dbl> 2005, 2005, 2005, 2005, 2005, 2005, 2005, 2005, 2005, 20…
## $ year_c <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
## $ adventure <int> 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
## $ animation <int> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
## $ action <int> 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0,…
## $ scifi_fantasy <int> 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0,…
## $ horror <int> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0,…
El siguiente bloque cuantifica el tamaño de la base (películas sin ninguna de las cinco etiquetas de las dummies regresoras) y verifica el predominio del drama entre sus géneros, lo que sustenta la denominación adoptada en la especificación.
base_ref <- datos %>%
filter(year >= 2005 & year <= 2019,
adventure + animation + action + scifi_fantasy + horror == 0)
cat("Películas en la categoría de referencia:", nrow(base_ref),
sprintf("(%.1f%% de la muestra)", 100 * nrow(base_ref) / nrow(datos_modelo)), "\n")## Películas en la categoría de referencia: 1982 (49.4% de la muestra)
base_ref %>%
separate_rows(genres, sep = ", ") %>%
count(genres, sort = TRUE, name = "frecuencia") %>%
slice_head(n = 10) %>%
knitr::kable(caption = "Géneros más frecuentes en la categoría de referencia")| genres | frecuencia |
|---|---|
| Drama | 1364 |
| Comedy | 895 |
| Romance | 547 |
| Thriller | 334 |
| Crime | 277 |
| History | 146 |
| Mystery | 126 |
| Music | 92 |
| Family | 91 |
| War | 73 |
En este apartado se desarrolla la estimación del modelo especificado mediante MCO y la verificación formal de los supuestos del MCRLM. La lógica del recorrido es la siguiente: primero se estima el modelo y se examina la razonabilidad económica de sus resultados frente a las restricciones de signo de la especificación; después se somete cada supuesto a las pruebas requeridas. Los incumplimientos detectados aquí no se corrigen todavía: su tratamiento son los errores estándar robustos HAC e inferencia corregida.
# librerías necesarias para la estimación, verificación de supuestos, presentación, etc.
library(lmtest) # dwtest, bgtest, bptest
library(car) # vif
library(skedastic) # homocedasticidad
library(performance) # vif
library(tseries) # jarque.bera.test
library(nortest) # kstest con corrección de lilliefors
library(broom) # presentación ordenada de resultados
library(knitr) # tablas
library(fitdistrplus) #graficas
library(sandwich) # hac nw
library(robustbase) # estimacion robusta
library(caret) # createDataPartition: muestreo train/test
library(DescTools) # RMSE, MAE, MAPE, TheilU, MSE
library(stargazer) # resumen estadístico de las pruebas y simulacionesSe estima por MCO la especificación desarrollada en la sección anterior, sobre la muestra de trabajo ordenada cronológicamente (2005 – 2019).
modelo_mco <- lm(ln_revenue ~ ln_budget + runtime + english + season + year_c + adventure + animation + action + scifi_fantasy + horror, data = datos_modelo)
stargazer(modelo_mco, title = "MCO del Modelo de Ingresos de Taquilla", type = "latex", style = "default", no.space = TRUE, single.row = TRUE, ci = TRUE, ci.level = 0.95, summary.logical = FALSE )tidy(modelo_mco) %>%
kable(digits = 10,
col.names = c("Término", "Estimación", "Error estándar",
"Estadístico t", "Valor p"),
caption = "Estimación MCO del modelo de ingresos de taquilla")| Término | Estimación | Error estándar | Estadístico t | Valor p |
|---|---|---|---|---|
| (Intercept) | -0.82630696 | 0.306792422 | -2.6933747 | 0.0071027514 |
| ln_budget | 0.94339938 | 0.019720480 | 47.8385597 | 0.0000000000 |
| runtime | 0.01474553 | 0.001494248 | 9.8681979 | 0.0000000000 |
| english | 0.04286306 | 0.072479093 | 0.5913851 | 0.5542957730 |
| season | 0.21482845 | 0.055586358 | 3.8647692 | 0.0001129557 |
| year_c | 0.01124933 | 0.006663847 | 1.6881130 | 0.0914674188 |
| adventure | 0.26606645 | 0.084558329 | 3.1465434 | 0.0016642517 |
| animation | 0.56284257 | 0.123340559 | 4.5633210 | 0.0000051860 |
| action | 0.02623217 | 0.067983202 | 0.3858626 | 0.6996189498 |
| scifi_fantasy | 0.06306368 | 0.077884425 | 0.8097085 | 0.4181558723 |
| horror | 0.31790150 | 0.093162672 | 3.4123270 | 0.0006504934 |
La lectura del cuadro es provisional por una razón precisa: los errores estándar reportados presuponen homocedasticidad y ausencia de autocorrelación, supuestos que aún no se han verificado. Si las pruebas siguientes los rechazan, los estadísticos \(t\) y sus valores \(p\) dejarán de ser confiables, y la inferencia formal deberá esperar a los errores estándar robustos de los estimadores HAC. Lo que sí procede en esta etapa es el examen económico de los resultados:
Verificar que los signos estimados coincidan con las restricciones de la especificación.
Examinar la magnitud de la elasticidad ingreso-presupuesto \(\hat{\beta}_1\).
Valorar el ajuste global, considerando que en la literatura de taquilla un \(R^2\) entre 0.3 y 0.6 es habitual, dada la incertidumbre irreductible del fenómeno (De Vany & Walls, 1999).
El coeficiente de elasticidad ingreso-presupuesto es 0.943. Esto
significa que un incremento del 1 % del presupuesto se traduce en un
incremento de 0.94 % en los ingresos.
La significancia
estadística es muy robusta (\(p <
0.001\)). El intervalo de confianza es estrecho (\(\text{IC}\colon[0.905, 0.982]\)), no se
presentan rendimientos crecientes (\(\beta_1
> 1\)) ni marcadamente decrecientes (\(\beta_1 < 0.5\)).
En forma semilogarítmica, cada minuto adicional de duración se asocia
con aproximadamente 1.5% de ingresos adicionales (\(100 \times 0.015\)). Para contextualizarlo
con cambios más grandes: una película de 100 minutos frente a una de 130
minutos (diferencia típica entre una comedia y una épica) diferiría en
\((e^{0.015\times30}-1)\times100 \approx
55.4\%\) de ingresos.
El coeficiente es positivo,
estadísticamente significativo (\(p <
0.001\)), resolviendo a favor del signo positivo la ambigüedad
que dejaba abierta la teoría (\(\text{IC}\colon[0.012, 0.018]\)). El efecto
positivo sugiere que la señal de envergadura de producción domina sobre
la reducción de rotación de funciones en sala: las películas más largas
tienden a ser de mayor presupuesto y a tener un público que las busca
específicamente, incluso a costa de menos funciones diarias.
El coeficiente dummy english es 0.0428,
equivalente a \((e^{0.0428}-1)\times 100
\approx 4.3\%\) % de ingresos adicionales si la película está en
inglés. Sin embargo, el efecto no es estadísticamente significativo, el
intervalo de confianza al 95 % (\(\text{IC}\colon[-0.099, 0.185]\)) incluye
al 0 en su amplitud.
Aunque la literatura (Elberse &
Eliashberg, 2003) predecía un efecto positivo del idioma
inglés sobre el acceso a mercados globales, en el período 2005–2019 este
efecto no es distinguible de cero en la muestra.
Una película estrenada en temporada alta (verano + fin de año)
recauda \((e^{0.215}-1)\times100 \% \approx 24
\%\) más que una película del mismo presupuesto y género
estrenado fuera de esos períodos. El efecto es grande, el intervalo es
estrecho \(\text{IC}\colon[0.106,
0.324]\) y la significancia es robusta (\(p < 0.001\)).
Este resultado
valida fuertemente la hipótesis: (\(H_1\colon\, \beta_4>0\)) y confirma el
patrón de estacionalidad documentado por Einav
(2007).
El coeficiente indica una tendencia temporal de aproximadamente 1.1 %
de incremento anual en los ingresos en la ventana 2005–2019. Sin
embargo, el efecto no es estadísticamente significativo al 5 % (\(p > 0.05\)), el intervalo de confianza
al 95 % incluye al cero en su aplitud (\(\text{IC}\colon[-0.002, 0.024]\), indicando
que la tendencia, si existe, es débil.
Este resultado es coherente
con la hipótesis de signo ambiguo (\(H_0\colon\, \beta_5 = 0\) vs. \(H_1\colon\, \beta_5 \neq 0\)). La era
2005–2019 incluye fuerzas contrapuestas: inflación nominal de los
ingresos de taquilla, crecimiento del mercado global, pero también la
emergencia del streaming como canal alternativo.
Respecto a la categoría base (drama), una película de aventura
recauda \(e^{0.2660-1}\times100 \%\approx 30.5
\%\) más. El efecto es positivo, significativo (\(p < 0.05\)), y el intervalo no pasa por
cero (\(\text{IC}\colon[0.100,
0.432]\)).
Valida la hipótesis \(H_1\colon\, \gamma_1>0\) al nivel de
confianza del 95%. La magnitud es compatible con los hallazgos de Deniz & Hasbrouck (2012), quienes reportan a la
aventura como uno de los géneros de mayor correlación positiva con
ingresos.
Las películas animadas recaudan \((e^{0.5628}-1)\times100 \%\approx 76 \%\)
más que dramas comparables. Este es el coeficiente de género más grande
del modelo, con significancia robusta (p < 0.001) e intervalo bien
estimado (\(\text{IC}\colon[0.321,
0.805]\)).
Este hallazgo refleja la estructura del mercado
durante 2005–2019: la animación fue el género de mayor envergadura y
éxito comercial (Pixar, DreamWorks, etc.), con audiencias
multigeneracionales que generan múltiples semanas de exhibición y altos
ingresos.
El coeficiente es 0.0262, equivalente \((e^{0.0262}-1)\times100 \%\approx 2.65 \%\)
de ingresos adicionales, pero no es estadísticamente significativo
(\(p > 0.1\)); el intervalo de
confianza al 95 % incluye el cero (\(\text{IC}\colon[−0.107, 0.159]\)).
Este resultado es contrintuitivo a primera vista, dado que el género
acción genera blockbusters. Sin embargo, es coherente con la
estructura de correlaciones de la especificación: el género acción está
fuertemente asociado con presupuestos elevados, elencos de primera y
campañas de marketing costosas. Una vez que el modelo controla
ln_budget, el efecto adicional del género acción desaparece
estadísticamente, el presupuesto ya captura la mayor parte de la
varianza.
El coeficiente es 0.0360 \((e^{0.0360}-1)\times100 \%\approx 3.7 \%\),
pero no significativo (\(p > 0.1\));
el intervalo (\(\text{IC}\colon[−0.090,
0.216]\)) incluye cero.
Como pasa con el género acción,
aunque sean géneros populares y costosos, una vez el modelo controla
ln_budget, el efecto adicional de ambos géneros
desaparece.
Las películas de horror recaudan \((e^{0.3179}-1)\times100 \%\approx 37.4 \%\)
más que dramas, con significancia robusta (\(p
< 0.001\)) e intervalo bien estimado (\(\text{IC}\colon[0.151, 0.526]\)).
Este resultado contradice la hipótesis de signo ambiguo (se esperaba
\(\beta_5\gtrless0\)) al resultar
positivo y grande. En la era 2005–2019, el terror fue un género de alto
rendimiento comercial a pesar de presupuestos típicamente bajos:
franquicias como Paranormal Activity, The Ring, Insidious generaron
retornos extraordinarios. El coeficiente captura este patrón: el terror
entrega ingresos altos con inversión moderada, lo que explica su
presencia estimada positiva.
El modelo explica el 51.3% de la varianza en los ingresos de la muestra. En la literatura de taquilla (De Vany & Walls, 1999), un R² entre 0.3 y 0.6 es típico y considerado bueno para datos de corte transversal de entretenimiento, donde la varianza irreductible es inherente a la naturaleza paretiana del fenómeno. El 43.5% de varianza no explicada se atribuye a factores no observados (empresa productora y elenco, reseñas de críticos post-estreno, azar, shock de mercado, etc).
La prueba rechaza \(H_0\) de que todos los coeficientes sean cero. El modelo en conjunto es altamente significativo.
Una muestra de 4,015 observaciones es grande para una regresión con 11 parámetros (\(\text{ratio}\,\, n/k\approx 367\), muy por encima del mínimo de 20–30). El Teorema Central del Límite opera eficientemente a este tamaño, lo que valida la inferencia basada en normalidad asintótica incluso ante el rechazo formal de normalidad en los residuos. La potencia estadística de las pruebas es robusta.
El cuadro siguiente presenta cada supuesto verificable con su(s) prueba(s) y la hipótesis nula correspondiente. Los supuestos 1 (linealidad en los parámetros) y 2 (exogeneidad estricta) no admiten un contraste estadístico directo dentro del MCRLM: el primero queda garantizado por construcción de la forma funcional; el segundo se discutió en la especificación a propósito del carácter predeterminado del presupuesto.
| Supuesto | Prueba(s) | Hipótesis nula |
|---|---|---|
| 3. Normalidad | Jarque-Bera; Kolmogorov-Smirnov; Shapiro-Wilk | \(\epsilon \thicksim \operatorname{N}[0,\sigma^2_\epsilon]\) |
| 4. Homocedasticidad | White | \(\operatorname{Var}(\epsilon)=\sigma^2_\epsilon\cdot I_N\) |
| 5. No colinealidad | Factores de inflación de la varianza (VIF) | (diagnóstico, no contraste) |
| 6. No autocorrelación | Durbin-Watson; Breusch-Godfrey LM(1) y LM(2) | \(\operatorname{Cov}(\epsilon_i, \epsilon_j) = 0\) |
# Jarque-Bera: contrasta asimetría y curtosis conjuntamente
jb <- jarque.bera.test(modelo_mco$residuals)
# Kolmogorov-Smirnov con corrección de Lilliefors
ks <- lillie.test(modelo_mco$residuals)
# Shapiro-Wilk
sw <- shapiro.test(modelo_mco$residuals)
bind_rows(
tibble(Prueba = "Jarque-Bera",
Estadístico = unname(jb$statistic), `Valor p` = jb$p.value),
tibble(Prueba = "Kolmogorovp-Smirnov-Lilliefors",
Estadístico = unname(ks$statistic), `Valor p` = ks$p.value),
tibble(Prueba = "Shapiro-Wilk",
Estadístico = unname(sw$statistic), `Valor p` = sw$p.value)
) %>%
kable(digits = 100, caption = "Pruebas de normalidad")| Prueba | Estadístico | Valor p |
|---|---|---|
| Jarque-Bera | 3478.6109814 | 0.0000000000000000000000000000000000000000000000000 |
| Kolmogorovp-Smirnov-Lilliefors | 0.1090498 | 0.0000000000000000000000000000000000000000000000000 |
| Shapiro-Wilk | 0.9152132 | 0.0000000000000000000000000000000000000000009321246 |
Interpretación: Como tanto la prueba de Jarque-Bera, Kolgomorov-Smirnov con corrección de Lilliefors y Shapiro-Wilk presentan resultados convergentes (\(p < \alpha = 0.05\)), se rechaza \(H_0\): los residuos no siguen una distribución normal.
Interpretación:
vif(modelo_mco) %>%
enframe(name = "Regresor", value = "VIF") %>%
arrange(desc(VIF)) %>%
kable(digits = 2, caption = "Factores de inflación de la varianza")| Regresor | VIF |
|---|---|
| ln_budget | 1.56 |
| english | 1.43 |
| adventure | 1.36 |
| runtime | 1.30 |
| animation | 1.25 |
| scifi_fantasy | 1.21 |
| action | 1.18 |
| horror | 1.08 |
| year_c | 1.02 |
| season | 1.01 |
Interpretación:
Se presentan VIF muy cercanos a 1 para todas las variables. No hay
correlación entre las variables. La varianza no presenta inflación.
Acotación:
Para este modelo no se utilizará el Indice de Condición (IC) como indicador de multicolinealidad en el modelo dado que resulta sensible a la escala de los regresores.
Interpretación:
Como \(p =
0.0000000000000000000000000000000000000000000000000000002320223 <
\alpha = 0.05\), se rechaza la \(H_0\). Hay heterocedasticidad: la varianza
de los errores no es constante.
En ese caso los estimadores MCO
siguen siendo insesgados, pero sus errores estándar clásicos quedan
invalidados, y con ellos las pruebas \(t\) y \(F\).
dw <- dwtest(modelo_mco)
bg1 <- bgtest(modelo_mco, order = 1)
bg2 <- bgtest(modelo_mco, order = 2)
bind_rows(
tibble(Prueba = "Durbin-Watson (solo orden 1)",
Estadístico = unname(dw$statistic), `Valor p` = dw$p.value),
tibble(Prueba = "Breusch-Godfrey LM, orden 1",
Estadístico = unname(bg1$statistic), `Valor p` = bg1$p.value),
tibble(Prueba = "Breusch-Godfrey LM, orden 2",
Estadístico = unname(bg2$statistic), `Valor p` = bg2$p.value)
) %>%
kable(digits = 4,
caption = "Pruebas de autocorrelación (muestra en orden cronológico)")| Prueba | Estadístico | Valor p |
|---|---|---|
| Durbin-Watson (solo orden 1) | 1.9539 | 0.0679 |
| Breusch-Godfrey LM, orden 1 | 1.9745 | 0.1600 |
| Breusch-Godfrey LM, orden 2 | 7.3393 | 0.0255 |
Interpretación:
par(mfrow = c(1, 2))
plot(fitted(modelo_mco), modelo_mco$residuals, pch = 16, cex = 0.4, col = "grey40",
xlab = "Valores ajustados", ylab = "Residuos",
main = "Residuos vs. valores ajustados")
abline(h = 0, col = "red", lwd = 2)
plot(fitted(modelo_mco), abs(modelo_mco$residuals), pch = 16, cex = 0.4, col = "grey40",
xlab = "Valores ajustados", ylab = "|Residuos|",
main = "Escala de los residuos")Interpretación:
La heterocedasticidad tiene
una dirección contraintuitiva: las películas de menor recaudación
predicha tienen mayor varianza en sus errores. Esto refleja que el
mercado de películas pequeñas es más impredecible, esto quiere decir que
una película de bajo presupuesto puede fracasar completamente o
convertirse inesperadamente en un fenómeno. Las películas de gran
presupuesto, en cambio, tienden a recaudar dentro de rangos más
predecibles dado su ecosistema de distribución y marketing controlado.
Este patrón es completamente coherente con la naturaleza paretiana
documentada por De Vany & Walls (1999): la incertidumbre es
mayor en la cola izquierda de la distribución de ingresos.
La verificación de supuestos estableció que las perturbaciones
presentan heterocedasticidad (prueba de White) y una estructura de
autocorrelación de segundo orden (Breusch-Godfrey de orden 2). Bajo
estas condiciones los estimadores de los coeficientes permanecen
insesgados y consistentes, su validez descansa en la exogeneidad de los
regresores, no en la homocedasticidad ni en la ausencia de
autocorrelación. Lo que queda comprometido es la inferencia: los errores
estándar clásicos, y con ellos las pruebas \(t\) y \(F\) y los intervalos de confianza, dejan de
ser válidos.
La corrección estándar consiste en estimar una matriz de covarianzas robusta a heterocedasticidad y autocorrelación (HAC) mediante el estimador de Newey-West, que corrige simultáneamente ambas violaciones sin alterar las estimaciones puntuales de los coeficientes.
vcov_hac <- sandwich::NeweyWest(modelo_mco, lag = 2)
prueba_hac <- coeftest(modelo_mco, vcov. = vcov_hac) |> print()##
## t test of coefficients:
##
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -0.8263070 0.4895976 -1.6877 0.0915416 .
## ln_budget 0.9433994 0.0338735 27.8507 < 0.00000000000000022 ***
## runtime 0.0147455 0.0022079 6.6784 0.00000000002747 ***
## english 0.0428631 0.0876917 0.4888 0.6250152
## season 0.2148284 0.0552146 3.8908 0.0001015 ***
## year_c 0.0112493 0.0067004 1.6789 0.0932479 .
## adventure 0.2660665 0.0743312 3.5795 0.0003484 ***
## animation 0.5628426 0.1168013 4.8188 0.00000149773695 ***
## action 0.0262322 0.0664710 0.3946 0.6931291
## scifi_fantasy 0.0630637 0.0759613 0.8302 0.4064707
## horror 0.3179015 0.1107785 2.8697 0.0041301 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
La siguiente tabla contrasta los errores estándar clásicos con los HAC. Una razón HAC/clásico superior a la unidad indica que el error clásico subestimaba la incertidumbre del parámetro; valores en torno a uno indican que la corrección apenas modifica la inferencia para ese coeficiente.
se_clasico <- sqrt(diag(vcov(modelo_mco)))
se_hac <- sqrt(diag(vcov_hac))
t_clasico <- coef(modelo_mco) / se_clasico
comparacion_se <- tibble(
Parametro = names(coef(modelo_mco)),
Estimador = coef(modelo_mco),
`SE clasico` = se_clasico,
`SE HAC` = se_hac,
`Razon HAC/clasico` = se_hac / se_clasico,
`p clasico` = 2 * pt(abs(t_clasico), df.residual(modelo_mco), lower.tail = FALSE),
`p HAC` = prueba_hac[, 4]
)
kable(comparacion_se, digits = 10,
caption = "Errores estándar clásicos vs. HAC (Newey-West)")| Parametro | Estimador | SE clasico | SE HAC | Razon HAC/clasico | p clasico | p HAC |
|---|---|---|---|---|---|---|
| (Intercept) | -0.82630696 | 0.306792422 | 0.489597619 | 1.5958596 | 0.0071027514 | 0.0915415914 |
| ln_budget | 0.94339938 | 0.019720480 | 0.033873465 | 1.7176795 | 0.0000000000 | 0.0000000000 |
| runtime | 0.01474553 | 0.001494248 | 0.002207935 | 1.4776228 | 0.0000000000 | 0.0000000000 |
| english | 0.04286306 | 0.072479093 | 0.087691685 | 1.2098894 | 0.5542957730 | 0.6250152068 |
| season | 0.21482845 | 0.055586358 | 0.055214584 | 0.9933118 | 0.0001129557 | 0.0001015413 |
| year_c | 0.01124933 | 0.006663847 | 0.006700381 | 1.0054824 | 0.0914674188 | 0.0932479065 |
| adventure | 0.26606645 | 0.084558329 | 0.074331188 | 0.8790522 | 0.0016642517 | 0.0003483708 |
| animation | 0.56284257 | 0.123340559 | 0.116801339 | 0.9469824 | 0.0000051860 | 0.0000014977 |
| action | 0.02623217 | 0.067983202 | 0.066471037 | 0.9777568 | 0.6996189498 | 0.6931291313 |
| scifi_fantasy | 0.06306368 | 0.077884425 | 0.075961297 | 0.9753079 | 0.4181558723 | 0.4064706818 |
| horror | 0.31790150 | 0.093162672 | 0.110778477 | 1.1890865 | 0.0006504934 | 0.0041300815 |
Los intervalos de confianza al 95% se reconstruyen sobre los errores HAC:
ic_hac <- coefci(modelo_mco, vcov. = vcov_hac, level = 0.95)
kable(ic_hac, digits = 4, col.names = c("Límite inferior", "Límite superior"),
caption = "Intervalos de confianza al 95% con errores estándar HAC")| Límite inferior | Límite superior | |
|---|---|---|
| (Intercept) | -1.7862 | 0.1336 |
| ln_budget | 0.8770 | 1.0098 |
| runtime | 0.0104 | 0.0191 |
| english | -0.1291 | 0.2148 |
| season | 0.1066 | 0.3231 |
| year_c | -0.0019 | 0.0244 |
| adventure | 0.1203 | 0.4118 |
| animation | 0.3338 | 0.7918 |
| action | -0.1041 | 0.1566 |
| scifi_fantasy | -0.0859 | 0.2120 |
| horror | 0.1007 | 0.5351 |
Finalmente, las pruebas \(F\) de significancia conjunta se recalculan con la matriz HAC. La primera contrasta el bloque de género (\(H_0\colon \gamma_1 = \cdots = \gamma_5 = 0\)); la segunda, las variables de posicionamiento (\(H_0\colon \beta_{\text{runtime}} = \beta_{\text{english}} = \beta_{\text{season}} = 0\)):
# F conjunta del bloque de género (HAC-robusta)
f_genero <- linearHypothesis(modelo_mco,
c("adventure = 0", "animation = 0", "action = 0",
"scifi_fantasy = 0", "horror = 0"),
vcov. = vcov_hac)
print(f_genero)##
## Linear hypothesis test:
## adventure = 0
## animation = 0
## action = 0
## scifi_fantasy = 0
## horror = 0
##
## Model 1: restricted model
## Model 2: ln_revenue ~ ln_budget + runtime + english + season + year_c +
## adventure + animation + action + scifi_fantasy + horror
##
## Note: Coefficient covariance matrix supplied.
##
## Res.Df Df F Pr(>F)
## 1 4009
## 2 4004 5 10.671 0.0000000003326 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# F conjunta de las variables de posicionamiento (HAC-robusta)
f_posicion <- linearHypothesis(modelo_mco,
c("runtime = 0", "english = 0", "season = 0"),
vcov. = vcov_hac)
print(f_posicion)##
## Linear hypothesis test:
## runtime = 0
## english = 0
## season = 0
##
## Model 1: restricted model
## Model 2: ln_revenue ~ ln_budget + runtime + english + season + year_c +
## adventure + animation + action + scifi_fantasy + horror
##
## Note: Coefficient covariance matrix supplied.
##
## Res.Df Df F Pr(>F)
## 1 4007
## 2 4004 3 25.2 0.00000000000000038 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Esta sección contrasta formalmente las hipótesis planteadas en el marco teórico. Puesto que la verificación de supuestos estableció la invalidez de los errores estándar clásicos, todas las pruebas se construyen sobre los errores estándar robustos HAC obtenidos en la sección anterior.
# Definición de cada hipótesis: parámetro, dirección de H1 y valor bajo H0.
# "mayor" = una cola (H1: beta > 0); "dos_colas" = bidireccional (H1: beta != 0).
hipotesis <- tribble(
~Hipotesis, ~parametro, ~Cola, ~tipo, ~beta0,
"$H_1$", "ln_budget", "Una cola (>0)", "mayor", 0,
"$H_3$", "runtime", "Dos colas", "dos_colas", 0,
"$H_4$", "english", "Una cola (>0)", "mayor", 0,
"$H_5$", "season", "Una cola (>0)", "mayor", 0,
"$H_6$", "year_c", "Dos colas", "dos_colas", 0,
"$H_2$", "adventure", "Una cola (>0)", "mayor", 0,
"$H_2$", "animation", "Una cola (>0)", "mayor", 0,
"$H_2$", "action", "Una cola (>0)", "mayor", 0,
"$H_2$", "scifi_fantasy", "Una cola (>0)", "mayor", 0,
"$H_2$", "horror", "Dos colas", "dos_colas", 0
)
est <- coef(modelo_mco)
se <- sqrt(diag(vcov_hac)) # errores estándar HAC (definidos en la sección anterior)
gl <- df.residual(modelo_mco) # grados de libertad: n - k = 4029
tabla_hipotesis <- hipotesis %>%
mutate(
beta_hat = as.numeric(est[parametro]),
se_hac = as.numeric(se[parametro]),
t_stat = (beta_hat - beta0) / se_hac,
p_dos = 2 * pt(abs(t_stat), df = gl, lower.tail = FALSE),
p_ajust = case_when(
tipo == "dos_colas" ~ p_dos, # sin ajuste
tipo == "mayor" & beta_hat > beta0 ~ p_dos / 2, # signo coincide con H1
tipo == "mayor" & beta_hat <= beta0 ~ 1 - p_dos / 2, # signo opuesto a H1
TRUE ~ NA_real_
),
Decision = if_else(p_ajust < 0.05, "Se rechaza $H_0$", "No se rechaza $H_0$")
) %>%
dplyr::select(Hipotesis, parametro, Cola, beta_hat, se_hac,
t_stat, p_dos, p_ajust, Decision)
kable(tabla_hipotesis, digits = 10,
col.names = c("Hipótesis", "Parámetro", "Tipo", "Coef.",
"SE HAC", "t", "p (2 colas)", "p (ajust.)", "Decisión"),
caption = "Pruebas de hipótesis individuales con errores estándar HAC")| Hipótesis | Parámetro | Tipo | Coef. | SE HAC | t | p (2 colas) | p (ajust.) | Decisión |
|---|---|---|---|---|---|---|---|---|
| \(H_1\) | ln_budget | Una cola (>0) | 0.94339938 | 0.033873465 | 27.8506901 | 0.0000000000 | 0.0000000000 | Se rechaza \(H_0\) |
| \(H_3\) | runtime | Dos colas | 0.01474553 | 0.002207935 | 6.6784285 | 0.0000000000 | 0.0000000000 | Se rechaza \(H_0\) |
| \(H_4\) | english | Una cola (>0) | 0.04286306 | 0.087691685 | 0.4887927 | 0.6250152068 | 0.3125076034 | No se rechaza \(H_0\) |
| \(H_5\) | season | Una cola (>0) | 0.21482845 | 0.055214584 | 3.8907917 | 0.0001015413 | 0.0000507707 | Se rechaza \(H_0\) |
| \(H_6\) | year_c | Dos colas | 0.01124933 | 0.006700381 | 1.6789085 | 0.0932479065 | 0.0932479065 | No se rechaza \(H_0\) |
| \(H_2\) | adventure | Una cola (>0) | 0.26606645 | 0.074331188 | 3.5794726 | 0.0003483708 | 0.0001741854 | Se rechaza \(H_0\) |
| \(H_2\) | animation | Una cola (>0) | 0.56284257 | 0.116801339 | 4.8188024 | 0.0000014977 | 0.0000007489 | Se rechaza \(H_0\) |
| \(H_2\) | action | Una cola (>0) | 0.02623217 | 0.066471037 | 0.3946406 | 0.6931291313 | 0.3465645656 | No se rechaza \(H_0\) |
| \(H_2\) | scifi_fantasy | Una cola (>0) | 0.06306368 | 0.075961297 | 0.8302080 | 0.4064706818 | 0.2032353409 | No se rechaza \(H_0\) |
| \(H_2\) | horror | Dos colas | 0.31790150 | 0.110778477 | 2.8697046 | 0.0041300815 | 0.0041300815 | Se rechaza \(H_0\) |
\(H_0\): \(\beta_1 = 0\) — el presupuesto no influye
sobre los ingresos.
\(H_1\):
\(\beta_1 > 0\) — el presupuesto
influye positivamente; su valor estima la elasticidad
ingreso-presupuesto, parámetro central para la optimización de la
inversión.
El coeficiente estimado es \(\hat\beta_1 = 0.9433\) con \(\text{SE}_{\text{HAC}} = 0.0338\). El estadístico es \(t = 0.9433 / 0.0338 \approx 28\): el coeficiente está a veintiocho errores estándar de cero, una distancia abrumadora. El valor \(p\) de dos colas es indistinguible de cero; como el signo estimado (\(+\)) coincide con \(H_1\), el de una cola es la mitad, igualmente cero. Se rechaza \(H_0\) de forma contundente, el presupuesto influye positivamente sobre la recaudación.
\(H_0\): \(\beta_2 = 0\) — la duración no influye
sobre los ingresos.
\(H_1\):
\(\beta_2 \neq 0\) — la duración
influye, en dirección no determinada a priori.
El coeficiente estimado es \(\hat\beta_2 = 0.1474\) con \(\text{SE}_{\text{HAC}} = 0.0022\). El estadístico es \(t = 0.0147 / 0.0022 \approx 6.68\): el coeficiente está a más de seis errores estándar de cero. El valor \(p\) de dos colas es, también en este caso, indistinguible de cero (\(p \approx 0\)); por tratarse de una hipótesis bidireccional, el valor \(p\) se mantiene en su forma de dos colas, sin ajuste. Como \(p \approx 0 < \alpha = 0.05\), se rechaza \(H_0\): la señal de envergadura de producción relacionada con la duración de los filmes domina sobre la reducción de rotación de funciones en sala.
\(H_0\): \(\beta_3 = 0\) — el idioma inglés no influye
sobre los ingresos.
\(H_1\):
\(\beta_3 > 0\) — las películas en
inglés recaudan más por su acceso al circuito global.
El coeficiente estimado es \(\hat\beta_3 = 0.0428\) con \(\text{SE}_{\text{HAC}} = 0.0876\). El estadístico es \(t = 0.0428 / 0.0876 \approx 0.49\): el coeficiente está a penas a 0.49 errores estándar de cero. El valor \(p\) de dos colas es \(0.488\); al coincidir el signo con \(H_1\), el de una cola es \(0.488 / 2 = 0.312\). Como \(0.312 > \alpha = 0.05\), no hay rechazo a la \(H_0\): el efecto positivo del idioma inglés sobre el acceso a mercados globales que anticipa la teoría no resulta determinante en la recaudación, para el período 2005–2019.
\(H_0\): \(\beta_4 = 0\) — la temporada de estreno no
influye sobre los ingresos.
\(H_1\): \(\beta_4
> 0\) — el estreno en temporada alta se asocia con mayores
ingresos.
El coeficiente estimado \(\hat\beta_4 = 0.2148\) y \(\text{SE}_{\text{HAC}} = 0.0552\), el estadístico es \(t = 0.2148 / 0.0552 \approx 3.9\): casi cuatro errores estándar de distancia de cero. El valor \(p\) de dos colas es \(0.0001\); al coincidir el signo con \(H_1\), de una cola es \(0.0001 / 2 = 0.00005\). Como \(0.00005 < \alpha = 0.05\), se rechaza la \(H_0\): estrenar en temporada alta se asocia con mayor recaudación.
\(H_0\): \(\beta_5 = 0\) — el año de estreno no
influye sobre los ingresos.
\(H_1\): \(\beta_5
\neq 0\) — el año influye, en dirección dependiente de las
tendencias del período 2005–2019.
El coeficiente estimado \(\hat\beta_5 = 0.0112\) y \(\text{SE}_{\text{HAC}} = 0.0067\), el estadístico es \(t = 0.0112 / 0.006 \approx 1.68\): a menos de dos errores estándar de cero. El valor \(p\) de de dos colas \(p = 0.0932\) se mantiene, al tratarse de una hipótesis bidireccional, no necesita ajuste. Como \(p = 0.0932 > \alpha = 0.05\), no se rechaza la \(H_0\): el año que se estrena una película no resulta determinante en la recaudación.
Aventura (\(H_1: \gamma_1 > 0\), una cola): el coeficiente estimado \(\hat\gamma_1 = 0.2660\) y \(\text{SE}_{\text{HAC}} = 0.0743\), el estadístico \(t = 0.2660 / 0.0743 \approx 3.6\): el coeficiente está a mas de 3.5 errores estándar de cero. El valor \(p\) de dos colas es \(p = 0.0003\); al coincidir el signo con \(H_1\), el de una cola es $ 0.0003 / 2 = 0.00017$. Como \(p = 0.00017 < \alpha = 0.05\), se rechaza la hipótesis nula: el género aventura es determinante significativo en la recaudación.
Animación (\(H_1: \gamma_2 > 0\), una cola): el coeficiente estimado \(\hat\gamma_2 = 0.5628\) y \(\text{SE}_{\text{HAC}} = 0.1168\), el estadístico \(t = 0.5628 / 0.1168 \approx 4.82\): el coeficiente está a casi 5 errores estándar de cero. El valor \(p\) de dos colas es \(p = 0.0000014\); al coincidir con el signo de \(H_1\), el de una cola es \(0.0000014 / 2 = 0.00000074\). Como \(p = 0.00000074 < \alpha = 0.05\), se rechaza \(H_0\): el género de animación es el más determinante para la recaudación.
Acción (\(H_1: \gamma_3 > 0\), una cola): con \(\hat\gamma_3 = 0.0262\) y \(\text{SE}_{\text{HAC}} = 0.0664\), el estadístico \(t = 0.0262 / 0.0664 \approx 0.4\): está a menos de media unidad error estándar de cero. El valor \(p\) de dos colas es \(0.693\); aunque el signo es positivo (coincide con \(H_1\)), el de una cola es \(0.693 / 2 = 0.3465\), muy superior a \(0.05\). No se rechaza \(H_0\), una vez controlado el presupuesto, el género de acción no aporta un efecto distinguible sobre la recaudación.
Ciencia ficción y fantasía (\(H_1: \gamma_4 > 0\)): con \(\hat\gamma_4 = 0.0630\) y \(\text{SE}_{\text{HAC}} = 0.0759\), el estadístico \(t = 0.0630 / 0.0759 \approx 0.83\): a menos de una unidad de error estándar de cero. El valor \(p\) de dos colas es \(p = 0.4064\); como el signo es igual al de \(H_1\), el de una cola es \(0.4064 / 2 = 0.203\). Como \(p = 0.203 > \alpha = 0.05\), no se rechaza \(H_0\): los géneros ciencia ficción y fantasía no aportan un efecto distinguible, al igual que el género acción, una vez contralado el presupuesto.
Terror (\(H_1: \gamma_5 \neq 0\), dos colas): con \(\hat\gamma_5 = 0.3179\) y \(\text{SE}_{\text{HAC}} = 0.1107\), el estadístico es \(t = 0.3179 / 0.1107 \approx 2.9\), a casi tres errores estándar de cero. Por tratarse de una hipótesis bidireccional, el valor p se mantiene en su forma de dos colas, \(0.004\), sin ajuste alguno. Como \(0.004< 0.05\), se rechaza \(H_0\): el terror tiene un efecto significativo sobre la recaudación, positivo en este caso.
Los intervalos de confianza ofrecen una perspectiva complementaria a las pruebas de hipótesis. Un intervalo al 95% para \(\beta_j\).
Aplicado a los resultados HAC, el patrón es nítido y coherente con las pruebas \(t\):
\(H_0\): \(\gamma_1 = \gamma_2 = \gamma_3 = \gamma_4 =
\gamma_5 = 0\) — el bloque de género no aporta poder
explicativo.
\(H_1\): al menos un
\(\gamma_j \neq 0\) — el bloque de
género es conjuntamente significativo.
Resultado del bloque de género. El contraste arroja \(F(5,\,4004) = 10.671\). Como \(p = 0.0000000003326 < \alpha = 0.05\), se rechaza \(H_0\): el género, en su conjunto, es un determinante conjuntamente significativo de la recaudación, con independencia de la significancia individual de cada dummy.
\(H_0\): \(\beta_2 = \beta_3 = \beta_4 = 0\) — el
bloque de posicionamiento no aporta poder explicativo.
\(H_1\): al menos un \(\beta_{j,\ j=2,\ 3,\ 4} \neq 0\) — el
bloque de género es conjuntamente significativo.
Resultado del bloque de posicionamiento. El
contraste sobre runtime, english y
season arroja \(F(3,\,4004) =
25.200\), \(p = 0.00000000000000038
< \alpha = 0.05\), se rechaza \(H_0\): las decisiones de formato, mercado y
timing aportan, en conjunto, poder explicativo adicional más
allá del presupuesto y el género.
Síntesis. Ambas pruebas \(F\) refuerzan la lectura de las pruebas individuales: la especificación completa está justificada empíricamente. Ningún bloque de variables resulta prescindible en su conjunto, incluso cuando algunos componentes individuales no alcanzan significancia por separado.
Las medidas de bondad de ajuste internas, como el \(R^2\), cuantifican qué tan bien el modelo reproduce los datos con los que fue estimado, pero pueden ser optimistas: un modelo siempre se ajusta mejor a su propia muestra que a datos nuevos. Para obtener una medida honesta de su capacidad de pronóstico, que es, en definitiva, el propósito de la productora, se recurre a una validación cruzada por Monte Carlo, contrastando el desempeño dentro de muestra (datos de entrenamiento) contra el desempeño fuera de muestra (datos de prueba que el modelo nunca observó).
El procedimiento repite, a lo largo de 15,000 iteraciones, el
siguiente experimento: (i) se divide aleatoriamente la muestra en un
subconjunto de entrenamiento (75 % de las observaciones) y uno de prueba
(25 % restante), mediante caret::createDataPartition; (ii)
se estima el modelo únicamente con el subconjunto de entrenamiento;
(iii) se generan predicciones tanto para los datos de entrenamiento
(ajuste interno) como para los de prueba (pronóstico genuino); y (iv) se
calculan ocho medidas de desempeño en cada caso. La semilla aleatoria
(set.seed(118)) garantiza la reproducibilidad.
Las medidas calculadas son:
# Funciones de descomposición del coeficiente U de Theil
Um <- function(pronosticado, observado){ # proporción de SESGO
((mean(pronosticado) - mean(observado))^2) / MSE(pronosticado, observado)
}
Us <- function(pronosticado, observado){ # proporción de VARIANZA
((sd(pronosticado) - sd(observado))^2) / MSE(pronosticado, observado)
}
Uc <- function(pronosticado, observado){ # proporción de COVARIANZA (no sistemático)
(2 * (1 - cor(pronosticado, observado)) * sd(pronosticado) * sd(observado)) /
MSE(pronosticado, observado)
}set.seed(118)
numero_de_muestras <- 15000 # iteraciones (rúbrica: >= 5000)
# Particiones 75/25 sobre la variable endógena
muestras <- datos_modelo$ln_revenue %>%
createDataPartition(p = 0.75, times = numero_de_muestras, list = TRUE)
Modelos_Entrenamiento <- vector(mode = "list", length = numero_de_muestras)
Pronostico_Prueba <- vector(mode = "list", length = numero_de_muestras)
Resultados_Performance_data_entrenamiento <- vector(mode = "list", length = numero_de_muestras)
Resultados_Performance <- vector(mode = "list", length = numero_de_muestras)
form_sim <- ln_revenue ~ ln_budget + runtime + english + season + year_c +
adventure + animation + action + scifi_fantasy + horror
for (j in 1:numero_de_muestras) {
Datos_Entrenamiento <- datos_modelo[ muestras[[j]], ]
Datos_Prueba <- datos_modelo[-muestras[[j]], ]
Modelos_Entrenamiento[[j]] <- lm(form_sim, data = Datos_Entrenamiento)
Pronostico_Prueba[[j]] <- Modelos_Entrenamiento[[j]] %>% predict(Datos_Prueba)
# Desempeño DENTRO de muestra (ajuste interno)
Resultados_Performance_data_entrenamiento[[j]] <- data.frame(
R2 = caret::R2(Modelos_Entrenamiento[[j]]$fitted.values, Datos_Entrenamiento$ln_revenue),
RMSE = DescTools::RMSE(Modelos_Entrenamiento[[j]]$fitted.values, Datos_Entrenamiento$ln_revenue),
MAE = DescTools::MAE(Modelos_Entrenamiento[[j]]$fitted.values, Datos_Entrenamiento$ln_revenue),
MAPE = DescTools::MAPE(Modelos_Entrenamiento[[j]]$fitted.values, Datos_Entrenamiento$ln_revenue) * 100,
THEIL = DescTools::TheilU(Modelos_Entrenamiento[[j]]$fitted.values, Datos_Entrenamiento$ln_revenue, type = 1),
Um = Um(Modelos_Entrenamiento[[j]]$fitted.values, Datos_Entrenamiento$ln_revenue),
Us = Us(Modelos_Entrenamiento[[j]]$fitted.values, Datos_Entrenamiento$ln_revenue),
Uc = Uc(Modelos_Entrenamiento[[j]]$fitted.values, Datos_Entrenamiento$ln_revenue)
)
# Desempeño FUERA de muestra (pronóstico genuino)
Resultados_Performance[[j]] <- data.frame(
R2 = caret::R2(Pronostico_Prueba[[j]], Datos_Prueba$ln_revenue),
RMSE = DescTools::RMSE(Pronostico_Prueba[[j]], Datos_Prueba$ln_revenue),
MAE = DescTools::MAE(Pronostico_Prueba[[j]], Datos_Prueba$ln_revenue),
MAPE = DescTools::MAPE(Pronostico_Prueba[[j]], Datos_Prueba$ln_revenue) * 100,
THEIL = DescTools::TheilU(Pronostico_Prueba[[j]], Datos_Prueba$ln_revenue, type = 1),
Um = Um(Pronostico_Prueba[[j]], Datos_Prueba$ln_revenue),
Us = Us(Pronostico_Prueba[[j]], Datos_Prueba$ln_revenue),
Uc = Uc(Pronostico_Prueba[[j]], Datos_Prueba$ln_revenue)
)
}Resultados obtenidos (15.000 iteraciones, partición 75/25):
| Métrica | Dentro de muestra | Fuera de muestra | Diferencia |
|---|---|---|---|
| \(R^2\) | 0.513 | 0.511 | \(-0.002\) |
| RMSE | 1.740 | 1.748 | \(+0.008\) |
| MAE | 1.247 | 1.252 | \(+0.005\) |
| MAPE | 8.599% | 8.638% | \(+0.039\) |
| THEIL | 0.052 | 0.053 | \(+0.001\) |
| \(U_m\) | 0.000 | 0.001 | \(\approx 0\) |
| \(U_s\) | 0.165 | 0.166 | \(+0.001\) |
| \(U_c\) | 0.835 | 0.834 | \(-0.001\) |
Validación cruzada del modelo:
El
hallazgo central es que ninguna métrica se degrada al pasar de los datos
de entrenamiento a los de prueba: las diferencias son de tercer decimal
en todos los casos. Esta es la evidencia más directa posible de que el
modelo no sobreajusta: su capacidad de pronóstico sobre películas que
nunca formaron parte de su estimación es, en la práctica, idéntica a su
ajuste interno. La mayor dispersión (desviación estándar) observada en
las métricas fuera de muestra, por ejemplo, en \(R^2\), \(0.029\) frente a \(0.007\) dentro de muestra, es esperable y
no contradice esta conclusión: el conjunto de prueba (25 %, \(\approx 3{,}750\) observaciones) es más
pequeño que el de entrenamiento (75 %, \(\approx 11{,}250\)), por lo que cada
partición individual está más expuesta al azar muestral, aunque el
promedio a través de las 5.000 iteraciones sea estable.
Magnitud del error:
El RMSE de \(1.748\) en escala logarítmica equivale a un
error típico de \(e^{1.748} \approx
5.7\times\) en la escala original de ingresos; el MAE de \(1.252\) corresponde a un factor de \(e^{1.250}\approx 3.5\times\). El MAPE de
\(8.6\%\) está calculado sobre el
logaritmo de la recaudación, no sobre los dólares, su traducción a la
escala real es precisamente ese factor multiplicativo de \(\sim 3.5\), no un 8.6% de error en dólares.
Estas magnitudes, aunque amplias en términos absolutos, son coherentes
con la naturaleza paretiana e intrínsecamente impredecible de los
ingresos de taquilla documentada por De Vany
& Walls (1999).
Descomposición de Theil:
El diagnóstico
más informativo. La proporción de sesgo \(U_m
\approx 0\) en ambos casos es el resultado más alentador:
confirma que el modelo no está sistemáticamente desviado (ni sobreestima
ni subestima el nivel promedio de la recaudación). La proporción de
varianza \(U_s \approx 0.17\) refleja
un patrón estructural de cualquier regresión con \(R^2<1\): los valores ajustados, al ser
una combinación lineal suavizada de los regresores, exhiben
necesariamente menor dispersión que los valores observados, el modelo
capta la tendencia central pero atenúa los extremos más pronunciados de
la distribución. La proporción no sistemática \(U_c \approx 0.83\) es la lectura más
favorable: indica que, una vez descontados el sesgo y el desajuste de
varianza, más de cuatro quintas partes del error remanente es ruido
genuinamente aleatorio e irreducible, no un patrón que el modelo debería
haber capturado pero no lo hizo. Esto es consistente con la máxima de la
industria de que “nadie sabe nada” (nobody knows anything)
sobre el desempeño exacto de una película antes de su estreno: el modelo
identifica con solidez los determinantes sistemáticos —presupuesto,
género, temporada— pero una porción sustancial del resultado final
permanece, por naturaleza del fenómeno, fuera del alcance de cualquier
modelo predictivo.
Antes de proyectar, es indispensable precisar qué tipo de herramienta
es este modelo, porque de ello depende el uso legítimo que puede
dársele. La validación cruzada de la sección anterior arrojó un error
típico de pronóstico de \(1.748\) en
escala logarítmica, equivalente a un factor multiplicativo de
aproximadamente \(3.5\) a \(5.7\) veces en la escala de ingresos. En
términos prácticos, si el modelo proyecta una recaudación central de 50
millones de dólares, el valor efectivo podría ubicarse, con holgura, en
un rango del orden de 15 a 175 millones. Como instrumento de predicción
puntual, por ejemplo, para responder a la pregunta: “¿cuánto recaudará
exactamente esta película?”, el modelo es, por tanto, de utilidad
limitada.
Esta limitación, sin embargo, no es un defecto de especificación,
sino un reflejo de la naturaleza del fenómeno. La descomposición del
error de Theil estimada en la simulación es concluyente al respecto: la
proporción de sesgo fue prácticamente nula (\(U_m \approx 0\)), lo que confirma que el
modelo no incurre en error sistemático; y la proporción no sistemática
fue dominante (\(U_c \approx 0.83\)),
lo que indica que la mayor parte del error de pronóstico es ruido
genuinamente aleatorio e irreducible, no un patrón que el modelo debiera
haber capturado. Esta evidencia es coherente con el consenso de la
literatura económica del cine, sintetizado en la frase de De Vany & Walls (1999) según la cual, antes
del estreno, “nadie sabe nada” (nobody knows anything) sobre el
desempeño exacto de una película. El éxito en taquilla es, en una
porción sustancial, intrínsecamente impredecible.
La distinción se resume así:
| Pregunta de la productora | Respuesta del modelo | Confiabilidad |
|---|---|---|
| ¿Cuánto recaudará exactamente esta película? | Una cifra central, pero con un intervalo amplísimo | Baja — error de factor \(3.5\)–\(5.7\times\) |
| ¿Conviene aumentar el presupuesto? | Elasticidad \(\beta_1 \approx 0.94\) (casi 1:1, decreciente) | Alta — IC estrecho, \(p \approx 0\) |
| ¿Qué género maximiza el retorno relativo? | Animación \(+76\%\), aventura \(+30\%\), terror \(+37\%\) frente a drama | Alta — significativos con HAC |
| ¿Importa la temporada de estreno? | \(+24\%\) en temporada alta | Alta — robusto |
| ¿El modelo está sistemáticamente sesgado? | \(U_m \approx 0\) | Confirmado — sin sesgo |
El hecho de que la elasticidad sea positiva pero inferior a la unidad
(\(0 < \beta_1 < 1\)) tiene una
implicación económica de primer orden: los rendimientos del presupuesto
son positivos pero decrecientes. Cada dólar adicional de inversión
genera ingresos adicionales, pero en una proporción cada vez menor. Esta
propiedad es precisamente la que confiere sentido económico a la
decisión de inversión, pues implica que la relación entre presupuesto e
ingreso no constituye una invitación a gastar sin límite.
Esta lectura, no obstante, debe tomarse como una guía y no como una prescripción numérica exacta, por tres razones: 1. La recaudación de taquilla no equivale al ingreso neto del estudio, la sala de cine retiene aproximadamente la mitad, y la productora debe además cubrir mercadeo y distribución, costos ajenos al modelo. 2. La elasticidad estimada es un promedio muestral, y la relación verdadera podría no ser constante a lo largo de todo el rango de presupuestos. El modelo informa la decisión de inversión, confirma la existencia de rendimientos decrecientes y orienta sobre la dirección y magnitud relativa de los efectos, sin dictar una cifra única.
Para ilustrar el uso del modelo en la decisión del green-lightning, se proyecta la recaudación de cinco perfiles hipotéticos de películas, construidos de modo incremental para aislar el efecto de cada palanca de decisión. Todos comparten una duración de 110 minutos, idioma inglés y un año de referencia reciente (2019); se varían únicamente el presupuesto, el género y la temporada de estreno.
# Perfiles hipotéticos de películas
escenarios <- data.frame(
presupuesto = c(30e6, 30e6, 30e6, 100e6, 150e6),
runtime = 110,
english = 1,
season = c(0, 1, 1, 1, 1),
year_c = 14, # 2019 (dentro de muestra)
adventure = c(0, 0, 0, 0, 1),
animation = c(0, 0, 1, 1, 0),
action = 0,
scifi_fantasy = 0,
horror = 0
)
escenarios$ln_budget <- log(escenarios$presupuesto)
# Proyección puntual (mediana) e intervalo de predicción al 95%
pred <- predict(modelo_mco, newdata = escenarios,
interval = "prediction", level = 0.95)
dolares <- function(x) paste0("$", formatC(x / 1e6, format = "f", digits = 1),
"M")
data.frame(
Escenario = c("1. Drama base", "2. + Temporada alta", "3. + Animación",
"4. + Presupuesto alto", "5. Aventura de gran escala"),
Presupuesto = paste0("$", formatC(escenarios$presupuesto / 1e6, format = "f",
digits = 0), "M"),
Género = c("Drama", "Drama", "Animación", "Animación", "Aventura"),
Temporada = ifelse(escenarios$season == 1, "Alta", "Baja"),
`Proyección (mediana)` = dolares(exp(pred[, "fit"])),
`IP 95% inferior` = dolares(exp(pred[, "lwr"])),
`IP 95% superior` = dolares(exp(pred[, "upr"])),
check.names = FALSE
) %>%
kable(caption = "Proyección de recaudación para perfiles hipotéticos de
película (escala original, USD)")| Escenario | Presupuesto | Género | Temporada | Proyección (mediana) | IP 95% inferior | IP 95% superior |
|---|---|---|---|---|---|---|
| 1. Drama base | $30M | Drama | Baja | $30.7M | $1.0M | $938.3M |
| 2. + Temporada alta | $30M | Drama | Alta | $38.0M | $1.2M | $1163.3M |
| 3. + Animación | $30M | Animación | Alta | $66.7M | $2.2M | $2056.7M |
| 4. + Presupuesto alto | $100M | Animación | Alta | $207.7M | $6.7M | $6405.4M |
| 5. Aventura de gran escala | $150M | Aventura | Alta | $226.3M | $7.4M | $6954.4M |
La lectura correcta de esta tabla distingue dos planos. En el plano relativo, el confiablen las diferencias entre escenarios reflejan con precisión los efectos estimados: pasar de temporada baja a alta (escenarios 1 → 2) multiplica la recaudación mediana por \(e^{0.215} \approx 1.24\); cambiar de drama a animación (2 → 3) la multiplica por \(e^{0.563} \approx 1.76\); y elevar el presupuesto de 30 a 100 millones (3 → 4) la multiplica por \((100/30)^{0.943} \approx 3.1\). Estas comparaciones son la salida verdaderamente útil del modelo para la decisión.<br? >
Un contraste especialmente revelador surge entre los escenarios 4 y
5. Una película de aventura con presupuesto de 150 millones proyecta una
recaudación apenas un \(9\%\) superior
a la de una animación de 100 millones, pese a disponer de 50 millones
más de inversión. La razón es que la prima de género de la animación
(\(e^{0.563}\)) compensa casi por
completo la ventaja presupuestaria de la aventura: el incremento de
\(0.38\) unidades logarítmicas por los
50 millones adicionales queda neutralizado por la pérdida de \(0.30\) unidades al pasar de animación a
aventura. Esta es exactamente la clase de disyuntiva género–presupuesto
que el modelo permite cuantificar para la decisión de luz
verde.
En el plano absoluto, cada proyección puntual está rodeada de un
intervalo de predicción al \(95\%\)
extraordinariamente amplio, que abarca más de un orden de magnitud en
cada dirección. Esa amplitud no es un error de cálculo: es la
cuantificación honesta de la incertidumbre irreducible del negocio.
Conviene además una advertencia técnica: el intervalo de predicción se
construye con el error estándar clásico, y dada la heterocedasticidad
detectada (la varianza decrece con el valor ajustado), el intervalo real
es algo más angosto para las producciones de presupuesto alto y más
ancho para las de presupuesto bajo. En su extremo superior, los
intervalos pueden incluso superar las cifras de recaudación
históricamente observadas, lo que confirma —por sí mismo— que la
proyección puntual no es la fortaleza del modelo. La productora puede
confiar en que la animación rinde más que el drama; no puede confiar en
que una película específica recaudará la cifra central
proyectada.
Como contraste externo, resulta ilustrativo comparar los resultados con los de Deniz & Hasbrouck (2012), uno de los estudios de referencia en esta línea de investigación y el más directamente análogo al presente por compartir su pregunta central.
| Dimensión | Deniz & Hasbrouck (2012) | Modelo del presente estudio |
|---|---|---|
| Muestra | 150 películas de mayor recaudación, EE.UU. 2010 | 4,015 películas, 2005–2019 (espectro completo) |
| Forma funcional | Niveles (recaudación sin transformar) | Logarítmica (log-log / semi-log) |
| \(R^2\) | \(0.614\) (ajustado \(0.598\)) | \(0.513\) |
| Durbin-Watson | \(1.37\) | \(1.92\) |
| Corrección de inferencia | No reportada | HAC (Newey-West) |
| Regresores | 6 | 10 |
A primera vista, su \(R^2\) es más
alto. Sin embargo, una comparación rigurosa exige notar dos diferencias
que vuelven engañosa la lectura directa de ese número. En primer lugar,
la selección sobre la variable dependiente: restringir la muestra a las
150 películas de mayor recaudación equivale a modelar la variación
dentro de un grupo ya exitoso, excluyendo toda la cola de baja
recaudación que constituye la parte genuinamente difícil de predecir.
Esta restricción eleva mecánicamente el \(R^2\), al eliminar la heterogeneidad
extrema que el presente modelo retiene deliberadamente. En segundo
lugar, la forma funcional: su modelo opera en niveles de dólares y el
nuestro en logaritmos, y el \(R^2\) no
es directamente comparable entre ambas especificaciones, la
transformación logarítmica típicamente reduce el \(R^2\) aparente aun cuando el ajuste
relativo sea equivalente.
En términos de robustez econométrica, el modelo del presente estudio
se encuentra mejor posicionado: su estadístico de Durbin-Watson (\(1.92\)) está considerablemente más cerca
del valor ideal de ausencia de autocorrelación que el de Deniz y
Hasbrouck (\(1.37\)), e incorpora
además correcciones HAC formales de las que aquel carece; y su muestra
es más de veinticinco veces mayor y abarca quince años en lugar de uno
solo, lo que confiere mayor representatividad del mercado
completo.
El hallazgo más valioso de la comparación, no obstante, es de carácter sustantivo: pese a las diferencias de muestra, período y especificación, ambos estudios coinciden en sus conclusiones cualitativas centrales. Deniz y Hasbrouck encuentran el presupuesto significativo y positivo (\(B = 0.641\), \(t = 6.48\)), la animación significativa y positiva (\(B = 52.2\), \(t = 2.93\)) y la aventura significativa y positiva (\(B = 30.8\), \(t = 2.68\)), exactamente los mismos determinantes que resultan más robustos en el presente modelo. Esta coincidencia constituye una validación externa cruzada: dos investigaciones independientes, con datos y métodos distintos, arriban a la misma conclusión sobre qué características de una película impulsan su desempeño en taquilla.
El modelo estimado cumple el propósito para el cual fue concebido, entendido en sus términos correctos. No es una calculadora de recaudación, aunque ninguna lo es, dada la naturaleza del fenómeno, pero identifica con robustez econométrica los determinantes sistemáticos del desempeño en taquilla: el presupuesto, con rendimientos decrecientes (\(\beta_1 \approx 0.94\)); el género, con la animación y la aventura como los más rentables frente al drama (categoría modal); la temporada de estreno; y la duración. Estos hallazgos, validados externamente por su coincidencia con estudios independientes y respaldados internamente por una batería completa de diagnósticos y correcciones (HAC, validación cruzada, descomposición de Theil), proporcionan a la productora una base defendible para la decisión de inversión: una guía sobre qué características incrementan sistemáticamente el valor esperado de una producción, acompañada de una medida honesta de la incertidumbre que ninguna decisión en esta industria puede eludir.
Dataset completo de IMDB 1913 - 2023 en Kaggle: Full IMDb Movies Data
Archivo RData, environment de RStudio generado: modelo_determinantes_taquilla.RData
Archivo html: Informe_Tema6.html
Archivo html: Presentacion_Tema6.html
Archivo Rmd: Informe_Tema6.Rmd
Archivo Rmd: Presentacion_Tema6.Rmd
Archivo pdf: Informe_Tema6.pdf