prosto VS cape-dataframes

Compare prosto vs cape-dataframes and see what are their differences.

prosto

Prosto is a data processing toolkit radically changing how data is processed by heavily relying on functions and operations with functions - an alternative to map-reduce and join-groupby (by asavinov)

cape-dataframes

Privacy transformations on Spark and Pandas dataframes backed by a simple policy language. (by capeprivacy)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
prosto cape-dataframes
9 4
89 174
- 0.0%
3.6 0.0
over 2 years ago 8 months ago
Python Python
MIT License Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

prosto

Posts with mentions or reviews of prosto. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-06-27.
  • Show HN: PRQL 0.2 – Releasing a better SQL
    16 projects | news.ycombinator.com | 27 Jun 2022
    > Joins are what makes relational modeling interesting!

    It is the central part of RM which is difficult to model using other methods and which requires high expertise in non-trivial use cases. One alternative to how multiple tables can be analyzed without joins is proposed in the concept-oriented model [1] which relies on two equal modeling constructs: sets (like RM) and functions. In particular, it is implemented in the Prosto data processing toolkit [2] and its Column-SQL language. The idea is that links between tables are used instead of joins. A link is formally a function from one set to another set.

    [1] Joins vs. Links or Relational Join Considered Harmful https://www.researchgate.net/publication/301764816_Joins_vs_...

    [2] https://github.com/asavinov/prosto data processing toolkit radically changing how data is processed by heavily relying on functions and operations with functions - an alternative to map-reduce and join-groupby

  • Excel 2.0 – Is there a better visual data model than a grid of cells?
    5 projects | news.ycombinator.com | 31 Mar 2022
    One idea is to use columns instead of cells. Each column has a definition in terms of other columns which might also be defined in terms of other columns. If you change value(s) in some source column then these changes will propagate through the graph of these column definitions. Some fragments of this general idea were implemented in different systems, for example, Power BI or Airtable.

    This approach was formalized in the concept-oriented model of data which relies on two basic elements: mathematical functions and mathematical sets. In contrast, most traditional data models rely on only sets. Functions are implemented as columns. The main difficulty in any formalization is how to deal with columns in multiple tables.

    This approach was implemented in the Prosto data processing toolkit: https://github.com/asavinov/prosto

  • Show HN: Query any kind of data with SQL powered by Python
    6 projects | news.ycombinator.com | 25 Jan 2022
    Having Python expressions within a declarative language is a really good idea because we can combine low level logic of computations of values with high level logic of set processing.

    A similar approach is implemented in the Prosto data processing toolkit:

    https://github.com/asavinov/prosto

    Although Prosto is viewed as an alternative to Map-Reduce by relying on functions, it also supports Python User-Defined Functions in its Column-SQL:

  • Show HN: Hamilton, a Microframework for Creating Dataframes
    6 projects | news.ycombinator.com | 8 Nov 2021
    Hamilton is more similar to the Prosto data processing toolkit which also relies on column operations defined via Python functions:

    https://github.com/asavinov/prosto

    However, Prosto allows for data processing via column operations in many tables (implemented as pandas data frames) by providing a column-oriented equivalents for joins and groupby (hence it has no joins and no groupbys which are known to be quite difficult and require high expertise).

    Prosto also provides Column-SQL which might be simpler and more natural in many use cases.

    The whole approach is based on the concept-oriented model of data which makes functions first-class elements of the model as opposed to having only sets in the relational model.

  • Against SQL
    8 projects | news.ycombinator.com | 10 Jul 2021
    One alternative to SQL (type of thinking) is Column-SQL [1] which is based on a new data model. This model is relies on two equal constructs: sets (tables) and functions (columns). It is opposed to the relational algebra which is based on only sets and set operations. One benefit of Column-SQL is that it does not use joins and group-by for connectivity and aggregation, respectively, which are known to be quite difficult to understand and error prone in use. Instead, many typical data processing patterns are implemented by defining new columns: link columns instead of join, and aggregate columns instead of group-by.

    More details about "Why functions and column-orientation" (as opposed to sets) can be found in [2]. Shortly, problems with set-orientation and SQL are because producing sets is not what we frequently need - we need new columns and not new table. And hence applying set operations is a kind of workaround due the absence of column operations.

    This approach is implemented in the Prosto data processing toolkit [0] and Column-SQL[1] is a syntactic way to define its operations.

    [0] https://github.com/asavinov/prosto Prosto is a data processing toolkit - an alternative to map-reduce and join-groupby

    [1] https://prosto.readthedocs.io/en/latest/text/column-sql.html Column-SQL (work in progress)

    [2] https://prosto.readthedocs.io/en/latest/text/why.html Why functions and column-orientation?

  • Feature Processing in Go
    3 projects | news.ycombinator.com | 21 Dec 2020
    (Currently, it is not actively developed and the focus is moved to a similar project - https://github.com/asavinov/prosto - also focused on data preprocessing and feature engineering)

cape-dataframes

Posts with mentions or reviews of cape-dataframes. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-06-27.
  • Show HN: Cape API – Keep your sensitive data private while using GPT-4
    4 projects | news.ycombinator.com | 27 Jun 2023
    - How can we mitigate hallucinations and bias so that we have higher trust in AI generated text?

    The features of the Cape API are designed to help solve these problems for developers, and we have a number of early customers using the API in production already.

    To get started, checkout our docs: https://docs.capeprivacy.com/

    View the API reference: https://api.capeprivacy.com/redoc

    Join the discussion on our Discord: https://discord.gg/nQW7YxUYjh

    And of course try the CapeChat playground at https://chat.capeprivacy.com/

  • Secure Sentiment Analysis with Enclaves
    3 projects | dev.to | 22 Nov 2022
    There are three essential components that enable this: cape encrypt, cape deploy, and cape run. The command cape encrypt encrypts inputs that can be sent into the Cape enclave for processing, cape deploy performs all needed actions for deploying a function into the enclave, and finally cape run invokes the deployed function with an input that was previously encrypted with cape encrypt. Learn more on the Cape docs.
  • Anonymize your Data with a single line!
    2 projects | /r/Python | 26 Dec 2021
    Well, many of the features in this project are simply wrappers around other libraries like this one. Therefore, the value proposition of this project would either have to be the automation aspect or the idea that you can shield the user from the details of how the implemented techniques work. I think both approaches are risky in this setting.

What are some alternatives?

When comparing prosto and cape-dataframes you can also consider the following projects:

popmon - Monitor the stability of a Pandas or Spark dataframe ⚙︎

Preql - An interpreted relational query language that compiles to SQL.

mito - The mitosheet package, trymito.io, and other public Mito code.

opaleye

rel8 - Hey! Hey! Can u rel8?

hamilton - A scalable general purpose micro-framework for defining dataflows. THIS REPOSITORY HAS BEEN MOVED TO www.github.com/dagworks-inc/hamilton

Optimus - :truck: Agile Data Preparation Workflows made easy with Pandas, Dask, cuDF, Dask-cuDF, Vaex and PySpark

spyql - Query data on the command line with SQL-like SELECTs powered by Python expressions

koalas - Koalas: pandas API on Apache Spark

fquery - A graph query engine

go-featureprocessing - 🔥 Fast, simple sklearn-like feature processing for Go

exodus - Platform to audit trackers used by Android application