Skip to content

Instantly share code, notes, and snippets.

View bluesheeptoken's full-sized avatar

Louis FRULEUX bluesheeptoken

View GitHub Profile
@bluesheeptoken
bluesheeptoken / README.md
Created October 26, 2023 13:03
sublime-text build for Scala-cli

To create this new build-system,

  • go to Tools > Build System > New Build System...
  • copy paste build definition below
  • Either install the package ANSIescape to see ansi colors, or remove the target and syntax key
  • Enjoy
import random
p = 1/6
nb_roll = 4
nb_simulation = 10_000
nb_sucess = 0
for _ in range(nb_simulation):
if any(random.random() < p for _ in range(nb_roll)):
@bluesheeptoken
bluesheeptoken / change_spark_version.py
Created November 27, 2020 17:08
Change Spark version in each submodule
"""
Small script to change Apache Spark version in all the modules.
It has been tested against Spark 3.0.1
We used it to rebuild Spark against different versions of the dependencies
"""
import os
def main():
old_version = "3.0.1"
@bluesheeptoken
bluesheeptoken / MeanAggregatorUdaf.scala
Created November 9, 2020 17:04
Examples of Mean Udaf using `UserDefinedAggregateFunction` and `Aggregator`
import org.apache.spark.sql.Encoder
import org.apache.spark.sql.catalyst.encoders.ExpressionEncoder
import org.apache.spark.sql.expressions.{Aggregator, UserDefinedFunction}
import org.apache.spark.sql.functions._
case class AggregatorState(sum: Long, count: Long)
// Aggregator[IN, BUF, OUT]
val meanAggregator = new Aggregator[Long, AggregatorState, Double]() {
// Initialize your buffer