Giter Club home page Giter Club logo

Comments (6)

twiecki avatar twiecki commented on September 7, 2024

That makes sense to me. Have you thought about how the API would look like?

from alphalens.

luca-s avatar luca-s commented on September 7, 2024

My idea would be to add a flag to create_factor_tear_sheet so that the user can supply the binning type (quantile or equal interval). Other than that we don't need additional api changes but we need a function similar to performance.quantize_factor that accepts the same input but returns the factor binned by value intervals instead of quantiles. We then call performance.quantize_factor or the new function depending on the binning type flag.

from alphalens.

twiecki avatar twiecki commented on September 7, 2024

Yes, a kwarg for the binning type makes sense.

from alphalens.

luca-s avatar luca-s commented on September 7, 2024

I thought about the api change again and an option would be to remove the "quantiles=5" argument from create_factor_tear_sheet function and add this new argument:

"binning_mode=(mode, mode_args)"

E.g.:
binning_mode=("quantiles", 5) #Number of uniform quantiles
binning_mode=("quantiles", [0, .15, .5, .85, 1.] ) # list of non uniform quantiles
binning_mode=("bins", 5) #number of equal-width bins
binning_mode=("bins", [-1, -0.3, 0., 0.3, 1] ) # list of bin edges allowing for non-uniform bin width

Also there is room for future addition of new modes.

Note: when "quantiles" mode is selected we'll end up calling pandas.qcut and when "bins" is provided we'll call pandas.cut

from alphalens.

twiecki avatar twiecki commented on September 7, 2024

That looks a bit bloated to me. What if we just have quantiles and bins and only one of them can be not-None?

from alphalens.

luca-s avatar luca-s commented on September 7, 2024

That sounds good too, let's go for that then.

from alphalens.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.