Giter VIP home page Giter VIP logo

Comments (5)

vyasr avatar vyasr commented on August 25, 2024 1

@Matt711's check should be sufficient. By definition every scenario that we're thinking of is one where the caller knows the wrapped type (either slow or fast) that they expected to get.

from cudf.

vyasr avatar vyasr commented on August 25, 2024

When evaluating use cases for this feature we should also be thinking about if they would be better served by improving how well the proxy object masquerades for the original. We can't make isinstance usable for the differentiation, but ideally calling codes wouldn't have to differentiate, so any time that they do probably indicates an area where the proxy isn't a drop-in replacement to the extent that we'd like it to be.

from cudf.

Matt711 avatar Matt711 commented on August 25, 2024

I'm not sure if we want to go this route, but every proxy type is an instance of the same metaclass. So we could check for that.

s = pd.Series([1])
assert type(type(s)) == cudf.pandas.fast_slow_proxy._FastSlowProxyMeta

from cudf.

mroeschke avatar mroeschke commented on August 25, 2024

I think a developer API that checks for _FastSlowProxyMeta would be good initial check.

I'm not sure if it's worth differentiating specific object types, i.e. pandas proxy objects vs numpy proxy objects, or make it fully generic by checking that metaclass. My initial feeling is checking _FastSlowProxyMeta would be preferable

from cudf.

Matt711 avatar Matt711 commented on August 25, 2024

I'll add the change for it

from cudf.

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.