review package¶
Review data model consisting of review and summary.
This module defines abstract review.base.Review
and review.base.Summary
, and those implementations. review.base.Review
represents review itself and review.base.Summary
is a summarized reviews given to a same object.
This module assumes each review is representable in one scalar value, and those review values are in a multipliable additive group. With the assumption, this module implements two types of summarization methods. One of them is average of reviews and the other one is making a vector, in other words histogram, of reviews.
This module has the following aliases:
Submodules¶
review.base module¶
Defines abstract Review and Summary classes.
 class
review.base.
Review
(date=None)[source]¶ Bases:
review.base._MultipliableImmutableAdditiveGroup
Abstruct class of Review.
Review is defined on a multipliable immutable additive group. Subclass must implement the following methods;
 _eq_:
 _add_:
 _rmul_:
Review also needs to implement a property score to return the review score itselt. The returned score must be a float number.
 Attribute:
 date: the date when this review was posted.

date
¶

score
¶ A float value representing score of this review.
 class
review.base.
Summary
[source]¶ Bases:
object
Abstract class of summary of reviews.
Summary only needs to define differenct and norm methods. difference computes difference between a summary and a review. norm maps a summary to a float value.
Each summary type might be related to a review type. Summary must implements a class method review_class to return the associated review class.

difference
(r)[source]¶ Compute a difference between this summary and a given review score.
Parameters: instance of Review. (An) – Returns: The difference between of the summary and the given review.

score
¶ Return a float value representing this summary.

review.histogram module¶
Implementations of histogram review and summary classes.
 class
review.histogram.
HistoReview
(v, quantizer=<builtin function round>, date=None)[source]¶ Bases:
review.base.Review
Vector Review.

inner_product
(other)[source]¶ Inner product of two vectors.
Parameters: other – a HistogramReview instance. Returns: the inner product between this and the other.

score
¶ A float value representing score of this review.

vector
¶ Raw vector.

 class
review.histogram.
HistoSummary
(reviews)[source]¶ Bases:
review.base.Summary
Vector summary.

difference
(r)[source]¶ Compute a difference between this summary and a given review score.
Parameters: instance of Review. (An) – Returns: The difference between of the summary and the given review.

score
¶ Return a float value representing this summary.

review.scalar module¶
Implementations of scalar review and summary classes.
 class
review.scalar.
AverageReview
(v, date=None)[source]¶ Bases:
review.base.Review
Scalar review.
Parameters: v – a float value representing review score. The review score is a scalar value.

score
¶ A float value representing score of this review.

 class
review.scalar.
AverageSummary
(scores)[source]¶ Bases:
review.base.Summary
Scalar summary.
The summary is an average of given reviews.

difference
(r)[source]¶ Difference between this summary and a given review.
Parameters: r – a review. Returns: a nonnegative float value or 0 representing the difference between this summary and the given value.

score
¶ Float value representing this summary.

v
¶ Summary score.
