class_docstr: Pipeline expression computing a boolean output.
  
  Filters are most commonly useful for describing sets of assets to include
  or exclude for some particular purpose. Many Pipeline API functions accept
  a ``mask`` argument, which can be supplied a Filter indicating that only
  values passing the Filter should be considered when performing the
  requested computation. For example, :meth:`catalyst.pipeline.Factor.top`
  accepts a mask indicating that ranks should be computed only on assets that
  passed the specified Filter.
  
  The most common way to construct a Filter is via one of the comparison
  operators (``<``, ``<=``, ``!=``, ``eq``, ``>``, ``>=``) of
  :class:`~catalyst.pipeline.Factor`. For example, a natural way to construct
  a Filter for stocks with a 10-day VWAP less than $20.0 is to first
  construct a Factor computing 10-day VWAP and compare it to the scalar value
  20.0::
  
      >>> from catalyst.pipeline.factors.equity import VWAP
      >>> vwap_10 = VWAP(window_length=10)
      >>> vwaps_under_20 = (vwap_10 <= 20)
  
  Filters can also be constructed via comparisons between two Factors.  For
  example, to construct a Filter producing True for asset/date pairs where
  the asset's 10-day VWAP was greater than it's 30-day VWAP::
  
      >>> short_vwap = VWAP(window_length=10)
      >>> long_vwap = VWAP(window_length=30)
      >>> higher_short_vwap = (short_vwap > long_vwap)
  
  Filters can be combined via the ``&`` (and) and ``|`` (or) operators.
  
  ``&``-ing together two filters produces a new Filter that produces True if
  **both** of the inputs produced True.
  
  ``|``-ing together two filters produces a new Filter that produces True if
  **either** of its inputs produced True.
  
  The ``~`` operator can be used to invert a Filter, swapping all True values
  with Falses and vice-versa.
  
  Filters may be set as the ``screen`` attribute of a Pipeline, indicating
  asset/date pairs for which the filter produces False should be excluded
  from the Pipeline's output.  This is useful both for reducing noise in the
  output of a Pipeline and for reducing memory consumption of Pipeline
  results.
class_docstr_tok: ["Pipeline","expression","computing","a","boolean","output",".","Filters","are","most","commonly","useful","for","describing","sets","of","assets","to","include","or","exclude","for","some","particular","purpose",".","Many","Pipeline","API","functions","accept","a","``","mask","``","argument",",","which","can","be","supplied","a","Filter","indicating","that","only","values","passing","the","Filter","should","be","considered","when","performing","the","requested","computation",".","For","example",",",":","meth",":","`","catalyst.pipeline.Factor.top","`","accepts","a","mask","indicating","that","ranks","should","be","computed","only","on","assets","that","passed","the","specified","Filter",".","The","most","common","way","to","construct","a","Filter","is","via","one","of","the","comparison","operators","(","``","<","``",",","``","<","=","``",",","``","!","=","``",",","``","eq","``",",","``",">","``",",","``",">","=","``",")","of",":","class",":","`","~catalyst.pipeline.Factor","`",".","For","example",",","a","natural","way","to","construct","a","Filter","for","stocks","with","a","10-day","VWAP","less","than","$","20.0","is","to","first","construct","a","Factor","computing","10-day","VWAP","and","compare","it","to","the","scalar","value","20.0",":",":",">",">",">","from","catalyst.pipeline.factors.equity","import","VWAP",">",">",">","vwap_10","=","VWAP","(","window_length=10",")",">",">",">","vwaps_under_20","=","(","vwap_10","<","=","20",")","Filters","can","also","be","constructed","via","comparisons","between","two","Factors",".","For","example",",","to","construct","a","Filter","producing","True","for","asset\/date","pairs","where","the","asset","'s","10-day","VWAP","was","greater","than","it","'s","30-day","VWAP",":",":",">",">",">","short_vwap","=","VWAP","(","window_length=10",")",">",">",">","long_vwap","=","VWAP","(","window_length=30",")",">",">",">","higher_short_vwap","=","(","short_vwap",">","long_vwap",")","Filters","can","be","combined","via","the","``","&","``","(","and",")","and","``","|","``","(","or",")","operators",".","``","&","``","-ing","together","two","filters","produces","a","new","Filter","that","produces","True","if","*","*","both","*","*","of","the","inputs","produced","True",".","``","|","``","-ing","together","two","filters","produces","a","new","Filter","that","produces","True","if","*","*","either","*","*","of","its","inputs","produced","True",".","The","``","~","``","operator","can","be","used","to","invert","a","Filter",",","swapping","all","True","values","with","Falses","and","vice-versa",".","Filters","may","be","set","as","the","``","screen","``","attribute","of","a","Pipeline",",","indicating","asset\/date","pairs","for","which","the","filter","produces","False","should","be","excluded","from","the","Pipeline","'s","output",".","This","is","useful","both","for","reducing","noise","in","the","output","of","a","Pipeline","and","for","reducing","memory","consumption","of","Pipeline","results","."]
code: def _aliased_type(self):
      return AliasedMixin.make_aliased_type(Filter)
  
imports: from itertools import chain
  from operator import attrgetter
  from numpy import float64, nan, nanpercentile
  from catalyst.errors import BadPercentileBounds, NonExistentAssetInTimeFrame, UnsupportedDataType
  from catalyst.lib.labelarray import LabelArray
  from catalyst.lib.rank import is_missing
  from catalyst.pipeline.expression import BadBinaryOperator, FILTER_BINOPS, method_name_for_op, NumericalExpression
  from catalyst.pipeline.mixins import AliasedMixin, CustomTermMixin, DownsampledMixin, LatestMixin, PositiveWindowLengthMixin, RestrictedDTypeMixin, SingleInputMixin
  from catalyst.pipeline.term import ComputableTerm, Term
  from catalyst.utils.input_validation import expect_types
  from catalyst.utils.memoize import classlazyval
  from catalyst.utils.numpy_utils import bool_dtype, repeat_first_axis
label_desc: Use image node_id 3 for calling the Filter obj's underlying member method code with example usage: obj._aliased_type() and returns: AliasedMixin