Suggestion: Rename "analysis_done" to "is_analyzed"
In the Sample
class it would better match to the boolean nature of the analysis_done
attribute if this were instead named is_analyzed
instead.
In checks for it self.is_analyzed
also is a lot more reader-friendly.