Fresh off the github press: a new version of pyradigms, give it a go if you're handling paradigms (or should be)!
pyradigms is a python package that allows you to compose and decompose three-dimensional paradigms from and into lists with parameters.
I've rewritten it from the ground up, as I've realized that I can use pandas for the core functionality -- grouping and pivoting of dataframes.
To give you an idea of what it does, it basically takes lists like this:
Person |
Number |
Verb |
Mood |
Form |
1 |
SG |
kon- |
IND |
konün |
1 |
SG |
kon- |
SBJV |
konli |
1 |
SG |
kon- |
IMP |
konchi |
1 |
DU |
kon- |
IND |
koniyu |
1 |
DU |
kon- |
SBJV |
konliyu |
1 |
PL |
kon- |
IND |
koniyiñ |
1 |
PL |
kon- |
SBJV |
konliyiñ |
2 |
SG |
kon- |
IND |
konimi |
2 |
SG |
kon- |
SBJV |
konülmi |
2 |
SG |
kon- |
IMP |
konnge |
2 |
DU |
kon- |
IND |
konimu |
2 |
DU |
kon- |
SBJV |
konülmu |
2 |
DU |
kon- |
IMP |
konmu |
2 |
PL |
kon- |
IND |
konimün |
2 |
PL |
kon- |
SBJV |
konülmün |
2 |
PL |
kon- |
IMP |
konmün |
3 |
SG |
kon- |
IND |
koni |
3 |
SG |
kon- |
SBJV |
konle |
3 |
SG |
kon- |
IMP |
konpe |
3 |
DU |
kon- |
IND |
koningu |
3 |
DU |
kon- |
SBJV |
konle engu |
3 |
DU |
kon- |
IMP |
konpe engu |
3 |
PL |
kon- |
IND |
koningün |
3 |
PL |
kon- |
SBJV |
konle engün |
3 |
PL |
kon- |
IMP |
konpe engün |
1 |
SG |
pi- |
IND |
pin |
1 |
SG |
pi- |
SBJV |
pili |
1 |
SG |
pi- |
IMP |
pichi |
1 |
DU |
pi- |
IND |
piyu |
1 |
DU |
pi- |
SBJV |
piliyu |
1 |
PL |
pi- |
IND |
piiñ |
1 |
PL |
pi- |
SBJV |
piliyiñ |
2 |
SG |
pi- |
IND |
pimi |
2 |
SG |
pi- |
SBJV |
pilmi |
2 |
SG |
pi- |
IMP |
pinge |
2 |
DU |
pi- |
IND |
pimu |
2 |
DU |
pi- |
SBJV |
pilmu |
2 |
DU |
pi- |
IMP |
pimu |
2 |
PL |
pi- |
IND |
pimün |
2 |
PL |
pi- |
SBJV |
pilmün |
2 |
PL |
pi- |
IMP |
pimün |
3 |
SG |
pi- |
IND |
pi |
3 |
SG |
pi- |
SBJV |
pile |
3 |
SG |
pi- |
IMP |
pipe |
3 |
DU |
pi- |
IND |
pingu |
3 |
DU |
pi- |
SBJV |
pile engu |
3 |
DU |
pi- |
IMP |
pipe engu |
3 |
PL |
pi- |
IND |
pingün |
3 |
PL |
pi- |
SBJV |
pile engün |
3 |
PL |
pi- |
IMP |
pipe engün |
1 |
SG |
tripa- |
IND |
tripan |
1 |
SG |
tripa- |
SBJV |
tripali |
1 |
SG |
tripa- |
IMP |
tripachi |
1 |
DU |
tripa- |
IND |
tripayu |
1 |
DU |
tripa- |
SBJV |
tripaliyu |
1 |
PL |
tripa- |
IND |
tripaiñ |
1 |
PL |
tripa- |
SBJV |
tripaliyiñ |
2 |
SG |
tripa- |
IND |
tripaymi |
2 |
SG |
tripa- |
SBJV |
tripalmi |
2 |
SG |
tripa- |
IMP |
tripange |
2 |
DU |
tripa- |
IND |
tripaymu |
2 |
DU |
tripa- |
SBJV |
tripalmu |
2 |
DU |
tripa- |
IMP |
tripamu |
2 |
PL |
tripa- |
IND |
tripaymün |
2 |
PL |
tripa- |
SBJV |
tripalmün |
2 |
PL |
tripa- |
IMP |
tripamün |
3 |
SG |
tripa- |
IND |
tripay |
3 |
SG |
tripa- |
SBJV |
tripale |
3 |
SG |
tripa- |
IMP |
tripape |
3 |
DU |
tripa- |
IND |
tripayngu |
3 |
DU |
tripa- |
SBJV |
tripale engu |
3 |
DU |
tripa- |
IMP |
tripape engu |
3 |
PL |
tripa- |
IND |
tripayngün |
3 |
PL |
tripa- |
SBJV |
tripale engü |
3 |
PL |
tripa- |
IMP |
tripape engün |
to this:
tripa- |
1SG |
1DU |
1PL |
2SG |
2DU |
2PL |
3SG |
3DU |
3PL |
IND |
tripan |
tripayu |
tripaiñ |
tripaymi |
tripaymu |
tripaymün |
tripay |
tripayngu |
tripayngün |
SBJV |
tripali |
tripaliyu |
tripaliyiñ |
tripalmi |
tripalmu |
tripalmün |
tripale |
tripale engu |
tripale engü |
IMP |
tripachi |
|
|
tripange |
tripamu |
tripamün |
tripape |
tripape engu |
tripape engün |
or this:
IND |
kon- |
tripa- |
pi- |
1SG |
konün |
tripan |
pin |
1DU |
koniyu |
tripayu |
piyu |
1PL |
koniyiñ |
tripaiñ |
piiñ |
2SG |
konimi |
tripaymi |
pimi |
2DU |
konimu |
tripaymu |
pimu |
2PL |
konimün |
tripaymün |
pimün |
3SG |
koni |
tripay |
pi |
3DU |
koningu |
tripayngu |
pingu |
3PL |
koningün |
tripayngün |
pingün |
or, if you wanted, even something like this:
1 |
SG.IND |
DU.IND |
PL.IND |
SG.SBJV |
DU.SBJV |
PL.SBJV |
SG.IMP |
pi- |
pin |
piyu |
piiñ |
pili |
piliyu |
piliyiñ |
pichi |
kon- |
konün |
koniyu |
koniyiñ |
konli |
konliyu |
konliyiñ |
konchi |
tripa- |
tripan |
tripayu |
tripaiñ |
tripali |
tripaliyu |
tripaliyiñ |
tripachi |
2 |
SG.IND |
DU.IND |
PL.IND |
SG.SBJV |
DU.SBJV |
PL.SBJV |
SG.IMP |
DU.IMP |
PL.IMP |
pi- |
pimi |
pimu |
pimün |
pilmi |
pilmu |
pilmün |
pinge |
pimu |
pimün |
kon- |
konimi |
konimu |
konimün |
konülmi |
konülmu |
konülmün |
konnge |
konmu |
konmün |
tripa- |
tripaymi |
tripaymu |
tripaymün |
tripalmi |
tripalmu |
tripalmün |
tripange |
tripamu |
tripamün |
3 |
SG.IND |
DU.IND |
PL.IND |
SG.SBJV |
DU.SBJV |
PL.SBJV |
SG.IMP |
DU.IMP |
PL.IMP |
pi- |
pi |
pingu |
pingün |
pile |
pile engu |
pile engün |
pipe |
pipe engu |
pipe engün |
kon- |
koni |
koningu |
koningün |
konle |
konle engu |
konle engün |
konpe |
konpe engu |
konpe engün |
tripa- |
tripay |
tripayngu |
tripayngün |
tripale |
tripale engu |
tripale engü |
tripape |
tripape engu |
tripape engün |
Vice versa, it also allows you to take a traditional linguistic paradigm (or something laid out like it) like this:
|
1 |
2 |
3M |
3F |
3N |
NOM.SG |
ég |
þú |
hann |
hún |
það |
ACC.SG |
mig |
þig |
hann |
hana |
það |
DAT.SG |
mér |
þér |
honum |
henni |
því |
GEN.SG |
mín |
þín |
hans |
hennar |
þess |
NOM.PL |
við |
þið |
þeir |
þær |
þau |
ACC.PL |
okkur |
ykkur |
þá |
þær |
þau |
DAT.PL |
okkur |
ykkur |
þeim |
þeim |
þeim |
GEN.PL |
okkar |
ykkar |
þeirra |
þeirra |
þeirra |
to a list like this:
Person |
Gender |
Case |
Number |
Value |
1 |
|
NOM |
SG |
ég |
1 |
|
ACC |
SG |
mig |
1 |
|
DAT |
SG |
mér |
1 |
|
GEN |
SG |
mín |
1 |
|
NOM |
PL |
við |
1 |
|
ACC |
PL |
okkur |
1 |
|
DAT |
PL |
okkur |
1 |
|
GEN |
PL |
okkar |
2 |
|
NOM |
SG |
þú |
2 |
|
ACC |
SG |
þig |
2 |
|
DAT |
SG |
þér |
2 |
|
GEN |
SG |
þín |
2 |
|
NOM |
PL |
þið |
2 |
|
ACC |
PL |
ykkur |
2 |
|
DAT |
PL |
ykkur |
2 |
|
GEN |
PL |
ykkar |
3 |
M |
NOM |
SG |
hann |
3 |
M |
ACC |
SG |
hann |
3 |
M |
DAT |
SG |
honum |
3 |
M |
GEN |
SG |
hans |
3 |
M |
NOM |
PL |
þeir |
3 |
M |
ACC |
PL |
þá |
3 |
M |
DAT |
PL |
þeim |
3 |
M |
GEN |
PL |
þeirra |
3 |
F |
NOM |
SG |
hún |
3 |
F |
ACC |
SG |
hana |
3 |
F |
DAT |
SG |
henni |
3 |
F |
GEN |
SG |
hennar |
3 |
F |
NOM |
PL |
þær |
3 |
F |
ACC |
PL |
þær |
3 |
F |
DAT |
PL |
þeim |
3 |
F |
GEN |
PL |
þeirra |
3 |
N |
NOM |
SG |
það |
3 |
N |
ACC |
SG |
það |
3 |
N |
DAT |
SG |
því |
3 |
N |
GEN |
SG |
þess |
3 |
N |
NOM |
PL |
þau |
3 |
N |
ACC |
PL |
þau |
3 |
N |
DAT |
PL |
þeim |
3 |
N |
GEN |
PL |
þeirra |
Comments