pyfca - python formal concept analysis
Project description
https://github.com/pyfca/pyfca
Python Formal Concept Analysis (FCA).
The purpose is to collect algoritms for FCA.
Algorithms
So far:
lattice construction:
AddIntent
implications basis:
Koenig
lattice drawing:
create lattice diagram and output in
svg
tkinter
Plan
Create a basic lattice data structure:
Merge existing sources available online.
Lattice construction:
FCbO
InClose2
…
Implications basis:
Closure
LinClosure
Wild’s Closure
…
Usage
It can be used to create a concept lattice and to draw it either using tkinter() or svg().
import pyfca
fca = pyfca.Lattice([{1,2},{2},{1,3}])
diagram = pyfca.LatticeDiagram(fca,4*297,4*210)
diagram.svg().saveas('tmp.svg')
import cairosvg
cairosvg.svg2png(url="file:///<path to tmp.svg>", write_to='tmp.png')
The AddIntent algorithm is from the paper:
AddIntent: A New Incremental Algorithm for Constructing Concept Lattices
The lattice drawing algorithm is from:
Implications
This uses the python int as a bit field to store the FCA context.
See this blog for more.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file pyfca-0.3.3-py3-none-any.whl
.
File metadata
- Download URL: pyfca-0.3.3-py3-none-any.whl
- Upload date:
- Size: 13.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b0e3b17695b2c1c481e8d9d42b9ec94faec1347f3303f337374d30b3b34394d0 |
|
MD5 | 919d5bec03778551d71e12397526efd4 |
|
BLAKE2b-256 | 174c4b56011026cfaea21389be9776ca9d1b3cb03f11bf41c2527817d0f9c0d7 |