Skip to main content

A python wrapper for the R function factanal.

Project description

Factanal

Python wrapper replicating the known factor analysis output from the factanal R function. The only supported input is a pandas data frame. Formulas as input are currently not supported. A covariance matrix is always computed from the input data frame. Setting control variables for maximum likelihood estimation is currently not supported.

Further information on R's factanal function for factor analysis: https://www.rdocumentation.org/packages/stats/versions/3.6.2/topics/factanal

More information on the factanal output and examples: https://data.library.virginia.edu/getting-started-with-factor-analysis/

Example

import pandas as pd
from r.wrapper import factanal

df = pd.DataFrame({"v1": [1,1,1,1,1,1,1,1,1,1,3,3,3,3,3,4,5,6],
                   "v2": [1,2,1,1,1,1,2,1,2,1,3,4,3,3,3,4,6,5],
                   "v3": [3,3,3,3,3,1,1,1,1,1,1,1,1,1,1,5,4,6],
                   "v4": [3,3,4,3,3,1,1,2,1,1,1,1,2,1,1,5,6,4],
                   "v5": [1,1,1,1,1,3,3,3,3,22,1,1,1,322,1,6,4,5],
                   "v6": [1,1,2,1,1,3,3,3,3,22,1,1,1,322,1,6,4,5],
                   "v7": [1,1,4,1,1,3,3,3,3,3,1,2,1,1,1,6,4,5],
                   "v8": [1,1,5,2,1,3,3,3,4,3,1,2,1,2,1,6,5,4]})

fa_res = factanal(pdf, factors=5, scores='regression', rotation='varimax', 
                  verbose=True, return_dict=True)

pd.DataFrame(fa_res["scores"])

Installation

pip install factanal

Dependencies

The only dependency is the rpy2 library.

In addition to that, R must be installed on your system and accessible to rpy2.

More information on rpy2: https://rpy2.github.io/doc/latest/html/index.html

Download R here: https://www.r-project.org/

Misc

Factanal for python is MIT licensed.

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

factanal-0.1.7.tar.gz (2.5 kB view hashes)

Uploaded Source

Built Distribution

factanal-0.1.7-py3-none-any.whl (3.7 kB view hashes)

Uploaded Python 3

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