All Projects β†’ dermatologist β†’ nlp-qrmine

dermatologist / nlp-qrmine

Licence: GPL-3.0 License
πŸ”¦ Qualitative Research support tools in Python

Programming Languages

Jupyter Notebook
11667 projects
python
139335 projects - #7 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to nlp-qrmine

Flask-Deep-Learning-NLP-API
Flask API to productize a document classification model. Classification model was built using Keras with tensorflow backend
Stars: ✭ 26 (-7.14%)
Mutual labels:  nlp-machine-learning
use-cases-of-bert
Use-cases of Hugging Face's BERT (e.g. paraphrase generation, unsupervised extractive summarization).
Stars: ✭ 18 (-35.71%)
Mutual labels:  nlp-machine-learning
Natural-Language-Processing
Contains various architectures and novel paper implementations for Natural Language Processing tasks like Sequence Modelling and Neural Machine Translation.
Stars: ✭ 48 (+71.43%)
Mutual labels:  nlp-machine-learning
NTUA-slp-nlp
πŸ’»Speech and Natural Language Processing (SLP & NLP) Lab Assignments for ECE NTUA
Stars: ✭ 19 (-32.14%)
Mutual labels:  nlp-machine-learning
phd-resources
Internet Delivered Treatment using Adaptive Technology
Stars: ✭ 37 (+32.14%)
Mutual labels:  nlp-machine-learning
CompareModels TRECQA
Compare six baseline deep learning models on TrecQA
Stars: ✭ 61 (+117.86%)
Mutual labels:  nlp-machine-learning
HackyHourHandbook
A handbook for those who want to start coordinating Hacky Hour events in their University/Institute
Stars: ✭ 43 (+53.57%)
Mutual labels:  research-tool
sent2vec
How to encode sentences in a high-dimensional vector space, a.k.a., sentence embedding.
Stars: ✭ 99 (+253.57%)
Mutual labels:  nlp-machine-learning
easyNLP
Do NLP without coding!
Stars: ✭ 19 (-32.14%)
Mutual labels:  nlp-machine-learning
sensim
Sentence Similarity Estimator (SenSim)
Stars: ✭ 15 (-46.43%)
Mutual labels:  nlp-machine-learning
Junet.jl
Julia package for network research
Stars: ✭ 37 (+32.14%)
Mutual labels:  research-tool
Chatbot
A Deep-Learning multi-purpose chatbot made using Python3
Stars: ✭ 36 (+28.57%)
Mutual labels:  nlp-machine-learning
nlp newsletter
Natural language processing (NLP) newsletter right on GitHub
Stars: ✭ 57 (+103.57%)
Mutual labels:  nlp-machine-learning
sentiment-analysis-of-tweets-in-russian
Sentiment analysis of tweets in Russian using Convolutional Neural Networks (CNN) with Word2Vec embeddings.
Stars: ✭ 51 (+82.14%)
Mutual labels:  nlp-machine-learning
Android-Apps-Downloader
πŸ“± A tool to download android apps from Google Play Store and Xiaomi App Store (the famous Chinese Store).
Stars: ✭ 16 (-42.86%)
Mutual labels:  research-tool
urdu-characters
πŸ“„ Complete collection of Urdu language characters & unicode code points.
Stars: ✭ 24 (-14.29%)
Mutual labels:  nlp-machine-learning
nlp ner workshop
Named-Entity-Recognition Workshop
Stars: ✭ 15 (-46.43%)
Mutual labels:  nlp-machine-learning
NLPnote
Gitbook Address: https://app.gitbook.com/@nlpgroup/s/nlpnote/
Stars: ✭ 101 (+260.71%)
Mutual labels:  nlp-machine-learning
adversarial-relation-classification
Unsupervised domain adaptation method for relation extraction
Stars: ✭ 18 (-35.71%)
Mutual labels:  nlp-machine-learning
eacirc
Automatic problem solver based on circuit-like representation and genetic programming
Stars: ✭ 13 (-53.57%)
Mutual labels:  research-tool

QRMine

/ˈkÀrmīn/

forthebadge made-with-pythonPyPI download total Libraries.io SourceRank GitHub tag (latest by date) Documentation

QRMine is a suite of qualitative research (QR) data mining tools in Python using Natural Language Processing (NLP) and Machine Learning (ML). QRMine is work in progress. Read More..

What it does

NLP

  • Lists common categories for open coding.
  • Create a coding dictionary with categories, properties and dimensions.
  • Topic modelling.
  • Arrange docs according to topics.
  • Compare two documents/interviews.
  • Select documents/interviews by sentiment, category or title for further analysis.
  • Sentiment analysis

ML

  • Accuracy of a neural network model trained using the data
  • Confusion matrix from an support vector machine classifier
  • K nearest neighbours of a given record
  • K-Means clustering
  • Principal Component Analysis (PCA)
  • Association rules

How to install


pip install qrmine
python -m spacy download en_core_web_sm

Troubleshoot

  • There is a (temporary) issue because of Tensorflows dependency on numpy fixed to < 1.20. Ignore the warnings about incompatibility with TF.
  • If there is still an error, install numpy separately as below.
pip install --no-deps numpy==1.20.1

Mac users

  • Mac users, please install libomp for XGBoost
brew install libomp

How to Use

  • input files are transcripts as txt files and a single csv file with numeric data. The output txt file can be specified.

  • The coding dictionary, topics and topic assignments can be created from the entire corpus (all documents) using the respective command line options.

  • Categories (concepts), summary and sentiment can be viewed for entire corpus or specific titles (documents) specified using the --titles switch. Sentence level sentiment output is possible with the --sentence flag.

  • You can filter documents based on sentiment, titles or categories and do further analysis, using --filters or -f

  • Many of the ML functions like neural network takes a second argument (-n) . In nnet -n signifies the number of epochs, number of clusters in kmeans, number of factors in pca, and number of neighbours in KNN. KNN also takes the --rec or -r argument to specify the record.

  • Variables from csv can be selected using --titles (defaults to all). The first variable will be ignored (index) and the last will be the DV (dependant variable).

Command-line options

qrmine --help

Command Alternate Description
--inp -i Input file in the text format with Topic
--out -o Output file name
--csv csv file name
--num -n N (clusters/epochs etc depending on context)
--rec -r Record (based on context)
--titles -t Document(s) title(s) to analyze/compare
--codedict Generate coding dictionary
--topics Generate topic model
--assign Assign documents to topics
--cat List categories of entire corpus or individual docs
--summary Generate summary for entire corpus or individual docs
--sentiment Generate sentiment score for entire corpus or individual docs
--nlp Generate all NLP reports
--sentence Generate sentence level scores when applicable
--nnet Display accuracy of a neural network model -n epochs(3)
--svm Display confusion matrix from an svm classifier
--knn Display nearest neighbours -n neighbours (3)
--kmeans Display KMeans clusters -n clusters (3)
--cart Display Association Rules
--pca Display PCA -n factors (3)

Use it in your code

from qrmine import Content
from qrmine import Network
from qrmine import Qrmine
from qrmine import ReadData
from qrmine import Sentiment
from qrmine import MLQRMine
  • More instructions and a jupyter notebook available here.

Input file format

NLP

Individual documents or interview transcripts in a single text file separated by Topic. Example below

Transcript of the first interview with John.
Any number of lines
<break>First_Interview_John</break>

Text of the second interview with Jane.
More text.
<break>Second_Interview_Jane</break>

....

Multiple files are suported, each having only one break tag at the bottom with the topic. (The tag may be renamed in the future)

ML

A single csv file with the following generic structure.

  • Column 1 with identifier. If it is related to a text document as above, include the title.
  • Last column has the dependent variable (DV). (NLP algorithms like the topic asignments may provide the DV)
  • All independent variables (numerical) in between.
index, obesity, bmi, exercise, income, bp, fbs, has_diabetes
1, 0, 29, 1, 12, 120, 89, 1
2, 1, 32, 0, 9, 140, 92, 0
......

Author

Citation

Please cite QRMine in your publications if it helped your research. Here is an example BibTeX entry (Read paper on arXiv):


@article{eapenbr2019qrmine,
  title={QRMine: A python package for triangulation in Grounded Theory},
  author={Eapen, Bell Raj and Archer, Norm and Sartpi, Kamran},
  journal={arXiv preprint arXiv:2003.13519 },
  year={2020}
}

QRMine is inspired by this work and the associated paper.

Demo

QRMine

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].