Skip to main content

psychometrics package, including structural equation model, confirmatory factor analysis, unidimensional item response theory, multidimensional item response theory, cognitive diagnosis model, factor analysis and adaptive testing.

Project description

.. image:: https://img.shields.io/travis/inuyasha2012/pypsy.svg
:target: https://travis-ci.org/inuyasha2012/pypsy

.. image:: https://coveralls.io/repos/github/inuyasha2012/pypsy/badge.svg?branch=master
:target: https://coveralls.io/github/inuyasha2012/pypsy?branch=master

pypsy
=====

`中文 <./README_ZH.rst>`_

`DINA Model and Parameter Estimation: A
Didactic <http://www.stat.cmu.edu/~brian/PIER-methods/For%202013-03-04/Readings/de%20la%20Torre-dina-est-115-30-jebs.pdf>`

psychometrics package, including structural equation model, confirmatory
factor analysis, unidimensional item response theory, multidimensional
item response theory, cognitive diagnosis model, factor analysis and
adaptive testing. The package is still a doll. will be finished in
future.

unidimensional item response theory
-----------------------------------

models
~~~~~~

- binary response data IRT (two parameters, three parameters).

- grade respone data IRT (GRM model)

Parameter estimation algorithm
------------------------------

- EM algorithm (2PL, GRM)

- MCMC algorithm (3PL)

--------------

Multidimensional item response theory (full information item factor analysis)
-----------------------------------------------------------------------------

Parameter estimation algorithm
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The initial value
^^^^^^^^^^^^^^^^^

The approximate polychoric correlation is calculated, and the slope
initial value is obtained by factor analysis of the polychoric
correlation matrix.

EM algorithm
^^^^^^^^^^^^

- E step uses GH integral.

- M step uses Newton algorithm (sparse matrix is divided into non
sparse matrix).

Factor rotation
^^^^^^^^^^^^^^^

Gradient projection algorithm

The shortcomings
~~~~~~~~~~~~~~~~

GH integrals can only estimate low dimensional parameters.

--------------

Cognitive diagnosis model
-------------------------

models
~~~~~~

- Dina

- ho-dina

parameter estimation algorithms
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

- EM algorithm

- MCMC algorithm

- maximum likelihood estimation (only for estimating skill parameters
of subjects)

--------------

Structural equation model
-------------------------

- contains three parameter estimation methods(ULS, ML and GLS).

- based on gradient descent

--------------

Confirmatory factor analysis
----------------------------

- can be used for continuous data, binary data and ordered data.

- based on gradient descent

- binary and ordered data based on Polychoric correlation matrix.

--------------

Factor analysis
---------------

For the time being, only for the calculation of full information item
factor analysis, it is very simple.

The algorithm
~~~~~~~~~~~~~

principal component analysis

The rotation algorithm
~~~~~~~~~~~~~~~~~~~~~~

gradient projection

--------------

Adaptive test
-------------

model
~~~~~

Thurston IRT model (multidimensional item response theory model for
personality test)

Algorithm
~~~~~~~~~

Maximum information method for multidimensional item response theory

Require
-------

- numpy

- progressbar2

How to use it
-------------

See demo in detail

TODO LIST
---------

- theta parameterization of CCFA

- parameter estimation of structural equation models for multivariate
data

- Bayesin knowledge tracing (Bayesian knowledge tracking)

- multidimensional item response theory (full information item factor
analysis)

- high dimensional computing algorithm (adaptive integral, etc.)

- various item response models

- cognitive diagnosis model

- G-DINA model

- Q matrix correlation algorithm

- Factor analysis

- maximum likelihood estimation

- various factor rotation algorithms

- adaptive

- adaptive cognitive diagnosis

- other adaption model

- standard error and P value

- code annotation, testing and documentation.

Reference
---------

- `DINA Model and Parameter Estimation: A
Didactic <http://www.stat.cmu.edu/~brian/PIER-methods/For%202013-03-04/Readings/de%20la%20Torre-dina-est-115-30-jebs.pdf>`__
- `Higher-order latent trait models for cognitive
diagnosis <http://www.aliquote.org/pub/delatorre2004.pdf>`__
- `Full-Information Item Factor
Analysis. <http://conservancy.umn.edu/bitstream/11299/104282/1/v12n3p261.pdf>`__
- `Multidimensional adaptive
testing <http://media.metrik.de/uploads/incoming/pub/Literatur/1996_Multidimensional%20adaptive%20testing.pdf>`__
- `Derivative free gradient projection algorithms for rotation <https://cloudfront.escholarship.org/dist/prd/content/qt9938p4wc/qt9938p4wc.pdf>`__


=======
History
=======

0.0.1 (2018-09-18)
------------------

* First release on PyPI.


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

psy-0.0.1.tar.gz (72.0 kB view details)

Uploaded Source

Built Distribution

psy-0.0.1-py2.py3-none-any.whl (38.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file psy-0.0.1.tar.gz.

File metadata

  • Download URL: psy-0.0.1.tar.gz
  • Upload date:
  • Size: 72.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.10.0 setuptools/40.4.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/2.7.11

File hashes

Hashes for psy-0.0.1.tar.gz
Algorithm Hash digest
SHA256 bb674edc63a661b7f3e0447c56b978883dd01e805eb33ffb06238c2f8ee70455
MD5 22325ac3a9fb81b04315bc4f853bfd66
BLAKE2b-256 91bd7bafe2a4b8c176743c1a926272c13f77bd9c0ff839653c5f9697deb03557

See more details on using hashes here.

File details

Details for the file psy-0.0.1-py2.py3-none-any.whl.

File metadata

  • Download URL: psy-0.0.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 38.3 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.10.0 setuptools/40.4.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/2.7.11

File hashes

Hashes for psy-0.0.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 167c116fb312993f36d3f988e97fff69aa61e261156e800f2e1447e7e7276ab8
MD5 98757a3dc11c3f85d3cd66a4fe3bdd00
BLAKE2b-256 ef452b97f1c60c0d3e5c233911246140229771f62a9760b7f0774d104d34e2b3

See more details on using hashes here.

Supported by

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