37 lines
1.2 KiB
Python
Executable File
37 lines
1.2 KiB
Python
Executable File
"""
|
|
Small script creating the models for the N-Gramm Viewer containing all
|
|
the different n-gramm data.
|
|
"""
|
|
|
|
corpus_type_list = ["lm_ns_year", "tk_ws_year", "lm_ns_speaker", "tk_ws_speaker"]
|
|
sort_key_list = ([i for i in range(10)]
|
|
+ "A B C D E F G H I J K L M N O P Q R S T U V W X Y Z".split()
|
|
+ ["_Non_ASCII"])
|
|
ngram_kinds = ["One", "Two", "Three", "Four", "Five"]
|
|
|
|
template_class = """
|
|
class Key{}_{}Gram_{}(models.Model):
|
|
ngram = models.CharField(verbose_name='{}Gram',
|
|
max_length=255,
|
|
default=None,
|
|
null=True,
|
|
blank=True)
|
|
key = models.CharField(max_length=255)
|
|
count = models.IntegerField()
|
|
|
|
def __str__(self):
|
|
return str(self.ngram) + " " + str(self.key)
|
|
"""
|
|
|
|
classes = []
|
|
for corpus_type in corpus_type_list:
|
|
for ngram_kind in ngram_kinds:
|
|
for key in sort_key_list:
|
|
cls = template_class.format(key, ngram_kind, corpus_type,
|
|
ngram_kind)
|
|
classes.append(cls)
|
|
|
|
with open("classes.txt", "w") as file:
|
|
for cls in classes:
|
|
file.write("{}\n".format(cls))
|