Skip to main content

Latent Interview Protocol Engineer (LIPE)

Project description

Latent Interview Protocol Engineer (LIPE)

PyPI License: MIT Python Version

Latent Interview Protocol Engineer (LIPE) is a Python utility for mapping the latent structure of interview corpora. It builds on the Interactive Topic Model to recover recurring protocol questions, support qualitative labeling/merging/splitting, and visualize interview flows. It's primary goal is to help researchers effectively navigate and explore their interview corpus.

  • Mapping out the underlying structure of a corpus of interviews
    • The underlying assumption is that in interviews on a certain topic, there will be an underlying set of key questions that are explored. These questions often follow a certain logic (e.g., if interviewee says X then ask Y else ask Z). We refer to this underlying set of key questions and how they connect as the interview protocol. In more structured interviews, this protocol might be known before hand, but often, interviewers may diverge from it as the interview question molds to the nuances of the phenomena. Other times, there may not even be an explicit protocol to start with. The goal of LIPE is to recover this interview protocol as it is latently expressed across a corpus of interviews.
    • Protocol questions are distinct from incidental questions, such as specific follow up questions or clarification questions, in that protocol questions characterize the entire corpus of interviews. As such, we can expect protocol questions to occur in a significant portion of the interviews, even if they are worded slightly differently.
    • Whether a question is protocol or incidental also depends on the researcher's conception of what questions are important. This is why it is important for researchers to be able to have full control over what is determined to be a protocol question.
    • LIPE provides an interface (building on the Interactive Topic Model (ITM)) for researchers to qualitatively examine, label, merge, and split questions. Because LIPE is a subclass of ITM, you can refer to the ITM examples and documentation for more information.
  • Navigating mapped out interview corpora
    • Once a corpus of interviews has been mapped out, researchers can use it to navigate the otherwise unwieldy corpus.
    • LIPE allows researchers to extract responses to particular protocol questions across the corpus. These responses include responses to any follow up questions.
    • LIPE also includes basic exploratory tools for the answers to particular questions including visualizations and topic models of the answers.
  • LIPE takes as an input a structured dataframe where each row is a line from an interview. Each line needs to have an interview ID, line ID, and speaker ID in addition to the text for that line.

Quick Start

Installation

pip install lipe

Basic Usage

import pandas as pd
from LIPE import LIPE

lines = pd.read_csv("toy_interviews.csv")

l = LIPE(lines)

l.get_question_info()

Features

  • Recover protocol questions from interviewer lines
  • Manual labeling, merging, splitting, and archiving of questions
  • Extract answers by question (lines, merged, or sentence-level)
  • Transition graph construction and visualization
  • Answer-level analytics (TF-IDF, word clouds, LDA, embedding plots)

Examples

See example.ipynb for a full workflow using a toy dataset.

Contributing

Contributions are welcome! Please open an issue or pull request.

Support & Contact

For questions, issues, or feature requests, please open an issue on GitHub or contact the maintainer at [zacthinks@outlook.com].

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lipe-0.3.0.tar.gz (581.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lipe-0.3.0-py3-none-any.whl (582.2 kB view details)

Uploaded Python 3

File details

Details for the file lipe-0.3.0.tar.gz.

File metadata

  • Download URL: lipe-0.3.0.tar.gz
  • Upload date:
  • Size: 581.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for lipe-0.3.0.tar.gz
Algorithm Hash digest
SHA256 d69fd140c329733ec9413c62eeb621e5dacb11be9154ed77445ace2648d9db51
MD5 736dd9aeddfaeb67e39677603205ca9e
BLAKE2b-256 5283b9305a1ff7100db2e455b404944c33cb9a6fb19a43c6f06145b8851df6a3

See more details on using hashes here.

File details

Details for the file lipe-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: lipe-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 582.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for lipe-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 01c00fc953f6b27654d7778a89f677e5f92049f74759e814681b340963fb5e5e
MD5 11341b61735b20fe392844a85f200c5c
BLAKE2b-256 a33bd2cdd56e3df56844a3bd4b77fa0d237cab2595bfc5ad23e88aeb69503981

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page