GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - google/bigframes: BigQuery DataFrames is a scalable, pandas-compatible DataFrame library.

BranchesTags
Open more actions menu

Latest commit

 

History

204 Commits
204 Commits

Folders and files

NameName
Last commit message
Last commit date
.gemini
.gemini
 
 
.github/workflows
.github/workflows
 
 
.kokoro
.kokoro
 
 
bigframes
bigframes
 
 
docs
docs
 
 
notebooks
notebooks
 
 
samples
samples
 
 
scratch
scratch
 
 
scripts
scripts
 
 
specs
specs
 
 
testing
testing
 
 
tests
tests
 
 
third_party
third_party
 
 
.coveragerc
.coveragerc
 
 
.flake8
.flake8
 
 
.gitignore
.gitignore
 
 
.isort.cfg
.isort.cfg
 
 
.pre-commit-config.yaml
.pre-commit-config.yaml
 
 
.readthedocs.yaml
.readthedocs.yaml
 
 
.release-please-manifest.json
.release-please-manifest.json
 
 
.repo-metadata.json
.repo-metadata.json
 
 
CHANGELOG.md
CHANGELOG.md
 
 
CONTRIBUTING.rst
CONTRIBUTING.rst
 
 
LICENSE
LICENSE
 
 
MANIFEST.in
MANIFEST.in
 
 
OWNERS
OWNERS
 
 
README.rst
README.rst
 
 
biome.json
biome.json
 
 
conftest.py
conftest.py
 
 
mypy.ini
mypy.ini
 
 
noxfile.py
noxfile.py
 
 
package-lock.json
package-lock.json
 
 
pyproject.toml
pyproject.toml
 
 
pytest.ini
pytest.ini
 
 
release-please-config.json
release-please-config.json
 
 
release-procedure.md
release-procedure.md
 
 
setup.cfg
setup.cfg
 
 
setup.py
setup.py
 
 
uv.lock
uv.lock
 
 

Repository files navigation

BigQuery DataFrames (BigFrames)

GA pypi versions

BigQuery DataFrames (also known as BigFrames) provides a Pythonic DataFrame and machine learning (ML) API powered by the BigQuery engine. It provides modules for many use cases, including:

  • bigframes.pandas is a pandas API for analytics. Many workloads can be migrated from pandas to bigframes by just changing a few imports.
  • bigframes.bigquery.ai provides powerful AI functions, text generation, vector embeddings, and semantic search powered by Gemini.
  • bigframes.ml is a scikit-learn-like API for ML.

BigQuery DataFrames is an open-source package.

Why Use BigQuery DataFrames?

BigQuery DataFrames eliminates the "data movement bottleneck." Instead of downloading large datasets to a local environment, BigFrames translates your Python code into optimized SQL executed across BigQuery's distributed compute engine.

  • Petabyte-Scale Scalability: Effortlessly process datasets exceeding local memory constraints without provisioning or managing Spark or Ray clusters.
  • Familiar Python Ecosystem: Use the pandas operations you already know (read_gbq, groupby, merge, pivot_table) directly on BigQuery tables.
  • Generative AI & Multimodality: Seamlessly leverage Gemini models, AI functions, multimodal processing (audio, video, PDF), vector embeddings, and vector search with bigframes.bigquery.ai.
  • Optimized Execution: Take advantage of BigFrames partial ordering mode (bpd.options.bigquery.ordering_mode = "partial") for considerable performance gains on analytical workloads.
  • Enterprise Security: Keep your data securely governed within the BigQuery security perimeter.
  • Hybrid Flexibility: Seamlessly transition between distributed BigQuery processing and local pandas analysis with to_pandas() and read_pandas().

Getting started with BigQuery DataFrames

Notebooks

The easiest way to get started is to open a sample notebook in Colab or BigQuery Studio. More details can be found in the BigFrames quickstart and in the introduction to notebooks.

Local environment

To use BigFrames in your local development environment:

  1. Run pip install --upgrade bigframes to install the latest version.
  2. Set up Application Default Credentials for your local development environment.
  3. Create a Google Cloud project with the BigQuery API enabled.
  4. Use the bigframes package to query data.
import bigframes.pandas as bpd

bpd.options.bigquery.project = your_gcp_project_id  # Optional in BQ Studio.
bpd.options.bigquery.ordering_mode = "partial"  # Recommended for performance.
df = bpd.read_gbq("bigquery-public-data.usa_names.usa_1910_2013")
print(
    df.groupby("name")
    .agg({"number": "sum"})
    .sort_values("number", ascending=False)
    .head(10)
    .to_pandas()
)

Documentation

To learn more about BigQuery DataFrames, visit these pages

  • Introduction to BigQuery DataFrames (BigFrames)
  • Sample notebooks
  • API reference
  • Source code (GitHub)

License

BigQuery DataFrames is distributed with the Apache-2.0 license.

It also contains code derived from the following third-party packages:

  • Ibis
  • pandas
  • Python
  • scikit-learn
  • XGBoost
  • SQLGlot

For details, see the third_party directory.

Contact Us

For further help and provide feedback, you can email us at [email protected].

About

BigQuery DataFrames is a scalable, pandas-compatible DataFrame library.

dataframes.bigquery.dev/

Topics

bigquerydata-sciencemachine-learningpython

Resources

Readme
License

Code of conduct

Code of conduct

Contributing

Contributing

Security policy

Security policy
Activity
Custom properties

Stars

299 stars

Watchers

30 watching

Forks

68 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.