minor fixes
Browse files- handler.py +12 -12
handler.py
CHANGED
@@ -36,7 +36,10 @@ class Utterance:
|
|
36 |
self.role = None
|
37 |
self.word_count = self.get_num_words()
|
38 |
self.timestamp = [starttime, endtime]
|
39 |
-
|
|
|
|
|
|
|
40 |
self.aggregate_unit_measure = endtime
|
41 |
self.num_math_terms = None
|
42 |
self.math_terms = None
|
@@ -138,11 +141,14 @@ class Transcript:
|
|
138 |
utt.role = 'student'
|
139 |
student_words += utt.get_num_words()
|
140 |
student_utt_count += 1
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
|
|
|
|
|
|
146 |
return {'teacher': teacher_percentage, 'student': student_percentage}, {'teacher': avg_teacher_length, 'student': avg_student_length}
|
147 |
|
148 |
def get_word_cloud_dicts(self):
|
@@ -150,8 +156,6 @@ class Transcript:
|
|
150 |
student_dict = {}
|
151 |
uptake_teacher_dict = {}
|
152 |
stop_words = stopwords.words('english')
|
153 |
-
# stopwords = nltk.corpus.stopwords.word('english')
|
154 |
-
# print("stopwords: ", stopwords)
|
155 |
for utt in self.utterances:
|
156 |
words = (utt.get_clean_text(remove_punct=True)).split(' ')
|
157 |
for word in words:
|
@@ -411,10 +415,6 @@ class EndpointHandler():
|
|
411 |
utterances = data.pop("inputs", data)
|
412 |
params = data.pop("parameters", None)
|
413 |
|
414 |
-
print("EXAMPLES")
|
415 |
-
for utt in utterances[:3]:
|
416 |
-
print("speaker %s: %s" % (utt["speaker"], utt["text"]))
|
417 |
-
|
418 |
transcript = Transcript(filename=params.pop("filename", None))
|
419 |
for utt in utterances:
|
420 |
transcript.add_utterance(Utterance(**utt))
|
|
|
36 |
self.role = None
|
37 |
self.word_count = self.get_num_words()
|
38 |
self.timestamp = [starttime, endtime]
|
39 |
+
if starttime is not None and endtime is not None:
|
40 |
+
self.unit_measure = endtime - starttime
|
41 |
+
else:
|
42 |
+
self.unit_measure = None
|
43 |
self.aggregate_unit_measure = endtime
|
44 |
self.num_math_terms = None
|
45 |
self.math_terms = None
|
|
|
141 |
utt.role = 'student'
|
142 |
student_words += utt.get_num_words()
|
143 |
student_utt_count += 1
|
144 |
+
if teacher_words + student_words > 0:
|
145 |
+
teacher_percentage = round(
|
146 |
+
(teacher_words / (teacher_words + student_words)) * 100)
|
147 |
+
student_percentage = 100 - teacher_percentage
|
148 |
+
else:
|
149 |
+
teacher_percentage = student_percentage = 0
|
150 |
+
avg_teacher_length = teacher_words / teacher_utt_count if teacher_utt_count > 0 else 0
|
151 |
+
avg_student_length = student_words / student_utt_count if student_utt_count > 0 else 0
|
152 |
return {'teacher': teacher_percentage, 'student': student_percentage}, {'teacher': avg_teacher_length, 'student': avg_student_length}
|
153 |
|
154 |
def get_word_cloud_dicts(self):
|
|
|
156 |
student_dict = {}
|
157 |
uptake_teacher_dict = {}
|
158 |
stop_words = stopwords.words('english')
|
|
|
|
|
159 |
for utt in self.utterances:
|
160 |
words = (utt.get_clean_text(remove_punct=True)).split(' ')
|
161 |
for word in words:
|
|
|
415 |
utterances = data.pop("inputs", data)
|
416 |
params = data.pop("parameters", None)
|
417 |
|
|
|
|
|
|
|
|
|
418 |
transcript = Transcript(filename=params.pop("filename", None))
|
419 |
for utt in utterances:
|
420 |
transcript.add_utterance(Utterance(**utt))
|