All Projects β†’ mattevans β†’ Distil

mattevans / Distil

Licence: mit
πŸ’§ In memory dataset filtering, inspired by snikch/aggro

Programming Languages

go
31211 projects - #10 most used programming language
golang
3204 projects

Projects that are alternatives of or similar to Distil

Wikisql
A large annotated semantic parsing corpus for developing natural language interfaces.
Stars: ✭ 965 (+1869.39%)
Mutual labels:  dataset
Human3.6m downloader
Human3.6M downloader by Python
Stars: ✭ 37 (-24.49%)
Mutual labels:  dataset
Openimager
Image processing Toolkit in R
Stars: ✭ 45 (-8.16%)
Mutual labels:  filtering
Point Cloud Filter
Scripts showcasing filtering techniques applied to point cloud data.
Stars: ✭ 34 (-30.61%)
Mutual labels:  filtering
Okutama Action
Okutama-Action: An Aerial View Video Dataset for Concurrent Human Action Detection
Stars: ✭ 36 (-26.53%)
Mutual labels:  dataset
Qri
you're invited to a data party!
Stars: ✭ 1,003 (+1946.94%)
Mutual labels:  dataset
Rstudioconf tweets
πŸ–₯ A repository for tracking tweets about rstudio::conf
Stars: ✭ 32 (-34.69%)
Mutual labels:  dataset
Mtnt
Code for the collection and analysis of the MTNT dataset
Stars: ✭ 48 (-2.04%)
Mutual labels:  dataset
Pts
Quantized Mesh Terrain Data Generator and Server for CesiumJS Library
Stars: ✭ 36 (-26.53%)
Mutual labels:  dataset
Watermarkreco
Pytorch implementation of the paper "Large-Scale Historical Watermark Recognition: dataset and a new consistency-based approach"
Stars: ✭ 45 (-8.16%)
Mutual labels:  dataset
Flatlist React
A helpful utility component to handle lists in react like a champ
Stars: ✭ 34 (-30.61%)
Mutual labels:  filtering
Dataconfs
A list of conferences connected with data worldwide.
Stars: ✭ 36 (-26.53%)
Mutual labels:  dataset
Covid Ctset
Large Covid-19 CT scans dataset from paper: https://doi.org/10.1101/2020.06.08.20121541
Stars: ✭ 40 (-18.37%)
Mutual labels:  dataset
Multi Plier
An unsupervised transfer learning approach for rare disease transcriptomics
Stars: ✭ 33 (-32.65%)
Mutual labels:  dataset
Keras Sincnet
Keras (tensorflow) implementation of SincNet (Mirco Ravanelli, Yoshua Bengio - https://github.com/mravanelli/SincNet)
Stars: ✭ 47 (-4.08%)
Mutual labels:  filtering
Fastp
An ultra-fast all-in-one FASTQ preprocessor (QC/adapters/trimming/filtering/splitting/merging...)
Stars: ✭ 966 (+1871.43%)
Mutual labels:  filtering
People Counting Dataset
the large-scale data set for people counting (LOI counting)
Stars: ✭ 37 (-24.49%)
Mutual labels:  dataset
Chinesetrafficpolicepose
Detects Chinese traffic police commanding poses ζ£€ζ΅‹δΈ­ε›½δΊ€θ­¦ζŒ‡ζŒ₯ζ‰‹εŠΏ
Stars: ✭ 49 (+0%)
Mutual labels:  dataset
Multidigitmnist
Combine multiple MNIST digits to create datasets with 100/1000 classes for few-shot learning/meta-learning
Stars: ✭ 48 (-2.04%)
Mutual labels:  dataset
Letsgodataset
This repository makes the integral Let's Go dataset publicly available.
Stars: ✭ 41 (-16.33%)
Mutual labels:  dataset

distil πŸ’§

GoDoc Build Status Go Report Card license

In memory dataset filtering.

Installation

go get -u github.com/mattevans/distil

Example

Given a dataset...

data := []map[string]interface{}{
	{"location": "New York", "department": "Engineering", "salary": 120000, "start_date": "2016-01-23T12:00:00Z"},
	{"location": "New York", "department": "Engineering", "salary": 80000, "start_date": "2016-03-23T12:00:00Z"},
	{"location": "New York", "department": "Marketing", "salary": 90000, "start_date": "2016-01-23T12:00:00Z"},
	{"location": "New York", "department": "Marketing", "salary": 150000, "start_date": "2016-01-23T12:00:00Z"},
	{"location": "Chicago", "department": "Engineering", "salary": 120000, "start_date": "2016-01-23T12:00:00Z"},
	{"location": "Chicago", "department": "Engineering", "salary": 160000, "start_date": "2016-03-23T12:00:00Z"},
}

Initialize distil, build filters and run...

// Init distil dataset.
dataset := NewDataset(data...)

// Build a distil query and apply filters.
query := &Query{}
query.Filters = append(query.Filters, Filter{
	Field: "location",
	Value: "Chicago",
	Operator: Operator{
		Code: "eq",
		Type: "string",
	},
})

// Run it.
results, err := dataset.Run(query)
if err != nil {
  errors.New("Unexpected error running query: %s", err.Error())
}

Returns...

[]map[string]interface{}{
	{"location": "Chicago", "department": "Engineering", "salary": 120000, "start_date": "2016-01-23T12:00:00Z"},
	{"location": "Chicago", "department": "Engineering", "salary": 160000, "start_date": "2016-03-23T12:00:00Z"},
}

Find a list of available operators here.

Thanks & Acknowledgements πŸ‘Œ

The packages's architecture is adapted from aggro, created by Mal Curtis. 🍻

Contributing

If you've found a bug or would like to contribute, please create an issue here on GitHub, or better yet fork the project and submit a pull request!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].