Skip to main content

A blazingly fast data processing library implemented in Rust with Python bindings

Project description

🌟 NorthStar: Blazingly Fast Data Processing 🚀

NorthStar is a high-performance data processing library implemented in Rust with Python bindings. It's designed to make your data science workflows faster and cooler! 😎

🌈 Features

  • 🦀 Rust-powered core for lightning-fast computations
  • 🐍 Seamless Python integration
  • 📊 Efficient DataFrame and Series operations
  • 🚄 Optimized for speed and memory usage

🛠️ Installation

Get started with NorthStar in seconds:

pip install northstar-data

🚀 Quick Start

Here's a taste of what NorthStar can do:

import northstar as ns

# Create a DataFrame
df = ns.PyDataFrame()
df.add_series(ns.PySeries("ages", [25, 30, 22, 28, 33]))
df.add_series(ns.PySeries("names", ["Alice", "Bob", "Charlie", "David", "Eve"]))
df.add_series(ns.PySeries("scores", [88.5, 92.0, 79.5, 95.5, 87.0]))

# Filter the data
young_df = df.filter("ages", lambda x: x < 25)

# Select specific columns
selected_df = df.select_columns(["names", "scores"])

# Apply a function to a series
boosted_scores = df.apply("scores", lambda x: x * 1.1)

🏎️ Performance

NorthStar is designed for speed. Here's a quick comparison:

import northstar as ns
import time

data = list(range(1_000_000))

start_time = time.time()
ns_series = ns.PySeries("big_data", data)
ns_sum = ns_series.sum()
ns_time = time.time() - start_time

print(f"NorthStar time: {ns_time:.4f} seconds")

start_time = time.time()
py_sum = sum(data)
py_time = time.time() - start_time

print(f"Python time: {py_time:.4f} seconds")

speedup = py_time / ns_time
print(f"NorthStar is {speedup:.2f}x faster than pure Python!")

🛣️ Roadmap

We're just getting started! Here's what's coming:

  • Advanced grouping and aggregation operations
  • More statistical functions (median, mode, standard deviation)
  • DataFrame join operations
  • Enhanced data visualization capabilities
  • Even more performance optimizations

🤝 Contributing

We'd love your help to make NorthStar even more awesome! Check out our Contributing Guide to get started.

📜 License

NorthStar is MIT licensed. See the LICENSE file for details.

🌟 Star Us!

If you find NorthStar helpful, give us a star on GitHub! It helps us know we're on the right track and encourages us to keep improving.

Happy data crunching! 🚀📊🦀

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

northstar-data-0.1.1.tar.gz (3.5 kB view hashes)

Uploaded Source

Built Distribution

northstar_data-0.1.1-cp311-cp311-macosx_14_0_arm64.whl (301.6 kB view hashes)

Uploaded CPython 3.11 macOS 14.0+ ARM64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page