MCPcopy Create free account
hub / github.com/K-Quant/HiDy / Document

Class Document

ner/data_utils/data_utils.py:159–190  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

157
158
159class Document(object):
160 def __init__(self, doc_id, text, ents=[]):
161 self.doc_id = doc_id
162 self.text = text
163 self.ents = ents
164 self.sents = self.extract_sentences()
165
166 def extract_sentences(self):
167 offset = 0
168 ent_iter = iter(self.ents)
169 ent = next(ent_iter, None)
170 sents = []
171 for text in self.text.split('。'):
172 sent_ents = []
173 while (ent is not None and
174 ent.start_pos >= offset and
175 ent.end_pos <= offset + len(text)):
176 sent_ents.append(ent.offset(-offset))
177 ent = next(ent_iter, None)
178 sent = Sentence(self.doc_id, offset, text, sent_ents)
179 sents.append(sent)
180 offset += len(text) + 1
181 return sents
182
183 def pad(self, pad_left=0, pad_right=0, pad_val=" "):
184 text = pad_left * pad_val + self.text + pad_right * pad_val
185 ents = self.ents.offset(pad_left)
186 return Document(self.doc_id, text, ents)
187
188 def _repr_html_(self,portid):
189 sent = Sentence(self.doc_id, offset=0, text=self.text, ents=self.ents)
190 return sent._repr_html_(portid)
191
192
193class Documents(object):

Callers 3

padMethod · 0.85
get_docMethod · 0.85
make_doc_predictionFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected