Skip to content

Análisis de contenido cuantitativo en Potato: libros de códigos y alfa de Krippendorff

Codifica noticias, publicaciones o discursos con un libro de códigos cargado desde un CSV en Potato, asigna varios codificadores por unidad y exporta el alfa de Krippendorff con intervalos bootstrap.

Un análisis de contenido cuantitativo codifica unidades como artículos, publicaciones, discursos o titulares con un libro de códigos, con al menos dos codificadores sobre una muestra, e informa de la fiabilidad entre codificadores para cada variable. En Potato 2.12.0 el libro de códigos puede cargarse desde un archivo CSV, JSON o YAML, y la exportación reliability escribe el alfa de Krippendorff de cada pregunta con un intervalo bootstrap.

El análisis de contenido en este sentido es el método de las ciencias sociales de Krippendorff y otros: un libro de códigos define las variables y sus categorías, los codificadores lo aplican a las unidades, y un coeficiente de concordancia corregido por azar sobre una muestra codificada dos veces muestra si el libro de códigos puede aplicarse de forma fiable. En Potato:

  • el libro de códigos es una pregunta hierarchical_multiselect cargada desde un archivo (taxonomy_file), o preguntas radio y multiselect normales;
  • max_annotations_per_item: 2 o más da a cada unidad varios codificadores;
  • --format reliability escribe la tabla de fiabilidad.

Cargar un libro de códigos desde un archivo

yaml
annotation_schemes:
  - annotation_type: hierarchical_multiselect
    name: topic
    description: Which topics does the headline cover?
    taxonomy_file: codebooks/topics.csv
    show_codes: true
    show_search: true
csv
code,label,parent,description
1,Economy,,"Taxes, jobs, prices and the budget"
101,Taxes,1,
102,Jobs and wages,1,
2,Environment,,
201,Climate,2,Climate change and emissions

Cada fila es un código: code, label, parent (el código del padre, vacío en el nivel superior) y una description opcional, que se muestra como información emergente del código. Se conserva el orden. show_codes: true muestra 101 Taxes en lugar de Taxes. También sirve un archivo JSON o YAML que contenga la propia taxonomía. Multiselect jerárquico explica el resto de las opciones del esquema.

Los libros de códigos publicados no vienen incluidos. Los temas del Comparative Agendas Project y las categorías del Manifesto Project pueden escribirse en este formato para tu propio uso, pero Potato no los distribuye: el libro de códigos del Comparative Agendas Project tiene licencia CC BY-NC-SA, y las condiciones del Manifesto Project no permiten redistribuirlo. Aporta tu propia copia.

Asignar dos o más codificadores por unidad

max_annotations_per_item fija cuántos codificadores ven cada unidad. Un diseño habitual hace que todos los codificadores codifiquen una muestra de fiabilidad compartida y que el resto de las unidades se codifique una sola vez. ¿Cuántos anotadores necesitas? y Asignación de tareas explican las estrategias de asignación, y /admin/iaa muestra la concordancia mientras la codificación está en curso.

Exportar la fiabilidad

bash
python -m potato.export --config config.yaml --format reliability --output ./export/

La exportación escribe reliability.csv y reliability.md (la misma tabla en Markdown), con una fila por pregunta:

ColumnaSignificado
levelNivel de medida: nominal (radio, select), ordinal (likert), de intervalo (number, slider, VAS), o MASI para multiselect y multiselect jerárquico, con crédito parcial para conjuntos que se solapan
alphaAlfa de Krippendorff sobre las unidades codificadas por dos o más codificadores
ci95_low, ci95_highUn intervalo bootstrap de percentiles, que remuestrea unidades con reemplazo (bootstrap remuestras, 1000 por defecto, con semilla)
percent_agreementProporción de pares de codificadores de una unidad que dieron la misma respuesta
units, coders, pairable_valuesEn qué se basa el coeficiente

El bootstrap remuestrea unidades, y no es el bootstrap basado en coincidencias de Hayes y Krippendorff (2007). Krippendorff (2004) sugiere basarse en variables con un alfa de al menos .800 y extraer conclusiones provisionales hasta .667. Potato informa de los números y deja ese juicio en tus manos.

La adjudicación resuelve los desacuerdos una vez establecida la fiabilidad, y La concordancia entre anotadores explica los coeficientes.

Ejemplo

bash
python potato/flask_server.py start examples/classification/codebook-content-analysis/config.yaml -p 8000

Lecturas adicionales

Para detalles de implementación, consulta la documentación fuente.