add flag to discard the roc data, only store auc
This commit is contained in:
parent
acf981d339
commit
125516393f
@ -234,7 +234,7 @@ def get_chirp_metadata(block):
|
||||
return trial_duration, dt, chirp_size, chirp_duration, chirp_times
|
||||
|
||||
|
||||
def foreign_fish_detection_beat(block_map, df, all_contrasts, all_conditions, kernel_width=0.0005, cell_name=""):
|
||||
def foreign_fish_detection_beat(block_map, df, all_contrasts, all_conditions, kernel_width=0.0005, cell_name="", store_roc=False):
|
||||
detection_performances = []
|
||||
|
||||
for contrast in all_contrasts:
|
||||
@ -285,12 +285,15 @@ def foreign_fish_detection_beat(block_map, df, all_contrasts, all_conditions, ke
|
||||
score = np.hstack((valid_distances_baseline, valid_distances_comparison))
|
||||
fpr, tpr, _ = roc_curve(group, score, pos_label=1)
|
||||
auc = roc_auc_score(group, score)
|
||||
detection_performances.append({"cell": cell_name, "detection_task": "beat", "contrast": contrast, "df": df, "kernel_width": kernel_width, "auc": auc, "true_positives": tpr, "false_positives": fpr})
|
||||
if store_roc:
|
||||
detection_performances.append({"cell": cell_name, "detection_task": "beat", "contrast": contrast, "df": df, "kernel_width": kernel_width, "auc": auc, "true_positives": tpr, "false_positives": fpr})
|
||||
else:
|
||||
detection_performances.append({"cell": cell_name, "detection_task": "beat", "contrast": contrast, "df": df, "kernel_width": kernel_width, "auc": auc})
|
||||
print("\n")
|
||||
return detection_performances
|
||||
|
||||
|
||||
def foreign_fish_detection_chirp(block_map, df, all_contrasts, all_conditions, kernel_width=0.0005, cell_name=""):
|
||||
def foreign_fish_detection_chirp(block_map, df, all_contrasts, all_conditions, kernel_width=0.0005, cell_name="", store_roc=False):
|
||||
detection_performances = []
|
||||
|
||||
for contrast in all_contrasts:
|
||||
@ -361,13 +364,18 @@ def foreign_fish_detection_chirp(block_map, df, all_contrasts, all_conditions, k
|
||||
score = np.hstack((valid_no_other_distances, valid_self_vs_alone_distances))
|
||||
fpr, tpr, _ = roc_curve(group, score, pos_label=1)
|
||||
auc = roc_auc_score(group, score)
|
||||
detection_performances.append({"cell": cell_name, "detection_task": "self vs soliloquy", "contrast": contrast, "df": df, "kernel_width": kernel_width, "auc": auc, "true_positives": tpr, "false_positives": fpr})
|
||||
|
||||
if store_roc:
|
||||
detection_performances.append({"cell": cell_name, "detection_task": "self vs soliloquy", "contrast": contrast, "df": df, "kernel_width": kernel_width, "auc": auc, "true_positives": tpr, "false_positives": fpr})
|
||||
else:
|
||||
detection_performances.append({"cell": cell_name, "detection_task": "self vs soliloquy", "contrast": contrast, "df": df, "kernel_width": kernel_width, "auc": auc})
|
||||
group = np.hstack((baseline_temp, other_vs_baseline_temp))
|
||||
score = np.hstack((valid_baseline_distances, valid_other_vs_baseline_distances))
|
||||
fpr, tpr, _ = roc_curve(group, score, pos_label=1)
|
||||
auc = roc_auc_score(group, score)
|
||||
detection_performances.append({"cell": cell_name, "detection_task": "other vs quietness", "contrast": contrast, "df": df, "kernel_width": kernel_width, "auc": auc, "true_positives": tpr, "false_positives": fpr})
|
||||
if store_roc:
|
||||
detection_performances.append({"cell": cell_name, "detection_task": "other vs quietness", "contrast": contrast, "df": df, "kernel_width": kernel_width, "auc": auc, "true_positives": tpr, "false_positives": fpr})
|
||||
else:
|
||||
detection_performances.append({"cell": cell_name, "detection_task": "other vs quietness", "contrast": contrast, "df": df, "kernel_width": kernel_width, "auc": auc})
|
||||
|
||||
print("\n")
|
||||
return detection_performances
|
||||
@ -414,7 +422,7 @@ def plot_detection_results(data_frame, df, kernel_width, cell):
|
||||
auc_ax.set_xlabel("contrast [%]")
|
||||
auc_ax.set_ylim([0.25, 1.0])
|
||||
auc_ax.set_ylabel("discriminability")
|
||||
auc_ax.legend(ncol=2, fontsize=6)
|
||||
auc_ax.legend(ncol=2, fontsize=6, handletextpad=0.4, columnspacing=1.0, labelspacing=0.25)
|
||||
auc_ax.plot([min(contrasts), max(contrasts)], [0.5, 0.5], lw=0.5, ls"--",)
|
||||
fig.savefig("discrimination.pdf")
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user