Update app.py
Browse files
app.py
CHANGED
@@ -11,7 +11,7 @@ parser = Parser()
|
|
11 |
def parse(text):
|
12 |
output = parser.parse(text)
|
13 |
|
14 |
-
dependency_tree = render_dependency_tree(output["forms"], output["heads"], output["
|
15 |
table = render_table(output["forms"], output["lemmas"], output["upos"], output["xpos"], output["ne"])
|
16 |
|
17 |
return dependency_tree, table
|
@@ -135,16 +135,16 @@ def render_table(forms, lemmas, upos, xpos, feats, named_entities):
|
|
135 |
feats = [feat + [""] * (max_len - len(feat)) for feat in feats]
|
136 |
feats = list(zip(*feats))
|
137 |
|
138 |
-
|
139 |
for i, ne in enumerate(named_entities):
|
140 |
if ne == "O":
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
elif ne.startswith("I") and i + 1 < len(named_entities) and named_entities[i + 1].startswith("I"):
|
145 |
-
|
146 |
else:
|
147 |
-
|
148 |
|
149 |
array = [
|
150 |
[""] + forms,
|
@@ -153,7 +153,7 @@ def render_table(forms, lemmas, upos, xpos, feats, named_entities):
|
|
153 |
["*XPOS:*"] + xpos,
|
154 |
["*UFEATS:*"] + list(feats[0]),
|
155 |
*([""] + list(row) for row in feats[1:]),
|
156 |
-
["*NE:*"] +
|
157 |
]
|
158 |
|
159 |
#return tabulate.tabulate(array, headers="firstrow", tablefmt="unsafehtml")
|
|
|
11 |
def parse(text):
|
12 |
output = parser.parse(text)
|
13 |
|
14 |
+
dependency_tree = render_dependency_tree(output["forms"], output["heads"], output["deprel"])
|
15 |
table = render_table(output["forms"], output["lemmas"], output["upos"], output["xpos"], output["ne"])
|
16 |
|
17 |
return dependency_tree, table
|
|
|
135 |
feats = [feat + [""] * (max_len - len(feat)) for feat in feats]
|
136 |
feats = list(zip(*feats))
|
137 |
|
138 |
+
named_entities_converted = []
|
139 |
for i, ne in enumerate(named_entities):
|
140 |
if ne == "O":
|
141 |
+
named_entities_converted.append("")
|
142 |
+
elif ne.startswith("B"):
|
143 |
+
named_entities_converted.append(f"<< {ne.split('-')[1]}")
|
144 |
elif ne.startswith("I") and i + 1 < len(named_entities) and named_entities[i + 1].startswith("I"):
|
145 |
+
named_entities_converted.append(ne.split('-')[1])
|
146 |
else:
|
147 |
+
named_entities_converted.append(f"{ne.split('-')[1]} >>")
|
148 |
|
149 |
array = [
|
150 |
[""] + forms,
|
|
|
153 |
["*XPOS:*"] + xpos,
|
154 |
["*UFEATS:*"] + list(feats[0]),
|
155 |
*([""] + list(row) for row in feats[1:]),
|
156 |
+
["*NE:*"] + named_entities_converted,
|
157 |
]
|
158 |
|
159 |
#return tabulate.tabulate(array, headers="firstrow", tablefmt="unsafehtml")
|