Skip to content

Commit 9813dd5

Browse files
committed
Fix prediction results for unlabeled data
1 parent 39bce6a commit 9813dd5

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

cesium_app/models.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,10 @@ def is_owned_by(self, username):
208208
def format_pred_data(fset, data):
209209
fset.columns = fset.columns.droplevel('channel')
210210
fset.index = fset.index.astype(str) # can't use ints as JSON keys
211-
labels = pd.Series(data.get('labels'), index=fset.index)
211+
212+
labels = pd.Series(data['labels'] if len(data.get('labels', [])) > 0
213+
else None, index=fset.index)
214+
212215
if len(data.get('pred_probs', [])) > 0:
213216
preds = pd.DataFrame(data.get('pred_probs', []),
214217
index=fset.index).to_dict(orient='index')

cesium_app/tests/frontend/test_predict.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,25 @@ def test_pred_results_table_regr(driver):
137137
raise
138138

139139

140+
def test_add_prediction_unlabeled(driver):
141+
driver.get('/')
142+
with create_test_project() as p,\
143+
create_test_dataset(p, label_type=None) as ds,\
144+
create_test_featureset(p) as fs, create_test_model(fs) as m:
145+
_add_prediction(p.id, driver)
146+
_click_prediction_row(p.id, driver)
147+
try:
148+
rows = _grab_pred_results_table_rows(driver, 'Mira')
149+
for row in rows:
150+
probs = [float(v.text)
151+
for v in row.find_elements_by_tag_name('td')[2::2]]
152+
assert sorted(probs, reverse=True) == probs
153+
driver.find_element_by_xpath("//th[contains(text(),'Time Series')]")
154+
except:
155+
driver.save_screenshot("/tmp/pred_click_tr_fail.png")
156+
raise
157+
158+
140159
def test_delete_prediction(driver):
141160
driver.get('/')
142161
with create_test_project() as p, create_test_dataset(p) as ds,\

0 commit comments

Comments
 (0)