Skip to content

Instantly share code, notes, and snippets.

View thomasaarholt's full-sized avatar

Thomas Aarholt thomasaarholt

View GitHub Profile
@thomasaarholt
thomasaarholt / languages.toml
Created August 4, 2023 18:51
Helix languages.toml setup for Python with pyright, ruff and black
View languages.toml
[[language]]
name = "python"
scope = "source.python"
injection-regex = "python"
file-types = ["py","pyi","py3","pyw",".pythonstartup",".pythonrc"]
shebangs = ["python"]
roots = [".", "pyproject.toml", "pyrightconfig.json"]
comment-token = "#"
language-servers = ["pyright", "ruff"]
indent = { tab-width = 4, unit = " " }
@thomasaarholt
thomasaarholt / branch.sh
Created March 21, 2023 20:41
git branch change using fzf in lovely color
View branch.sh
branch () {
branches=$(git for-each-ref --sort=-committerdate refs/heads/ --format='%(color:cyan)%(refname:short)|%(color:bold green)%(committerdate:relative)|%(color:magenta)%(authorname)%(color:reset)' --color=always|column -ts'|') &&
branch=$(echo "$branches" | fzf --multi --ansi --height=20%)
if [ -z "${branch}" ];
then return 0
else git switch $(echo "$branch" | sed "s/ .*//")
fi
}
@thomasaarholt
thomasaarholt / venv.sh
Created November 6, 2022 15:22
Bash function for creating virtual environments that are automatically (de)activated upon cd entry(exit).
View venv.sh
venv () {
RED='\033[0;31m'
NC='\033[0m' # No Color
# create virtualenv
if [ ! -d .venv ] # if venv does not exist already
then
python -m venv .venv --system-site-packages
else
echo -e "${RED}.venv${NC} already exists!"
return 0
@thomasaarholt
thomasaarholt / train_test_split_polars.py
Created July 24, 2022 13:06
Train and test split function for polars dataframes
View train_test_split_polars.py
def train_test_split(
df: pl.DataFrame, train_fraction: float = 0.75
) -> Tuple[pl.DataFrame, pl.DataFrame]:
"""Split polars dataframe into two sets.
Args:
df (pl.DataFrame): Dataframe to split
train_fraction (float, optional): Fraction that goes to train. Defaults to 0.75.
@thomasaarholt
thomasaarholt / lightgbm_gpu.sh
Last active July 24, 2022 11:01
Building lightgbm with GPU support from source on Red Hat with mload
View lightgbm_gpu.sh
module load CUDA/11.0 CMake/3.21.1-GCCcore-11.2.0 Boost/1.74.0-GCC-10.2.0
pip install lightgbm --install-option=--gpu
# If running from notebook, ensure that the following contains Boost:
# import os
# os.environ["LD_LIBRARY_PATH"].split(":")
@thomasaarholt
thomasaarholt / xgboost_gpu.sh
Last active July 24, 2022 11:01
Building XGBoost with GPU support from source on Red Hat with mload
View xgboost_gpu.sh
# must not use gcc version > 10
module load CUDA/11.0 CMake/3.21.1-GCCcore-11.2.0
# Clone with recursive! Otherwise you get dmlc error later on!
git clone --recursive https://github.com/dmlc/xgboost
cd xgboost/python-package
# clean out any old build files that may break things if try to recompile
rm -rf build
@thomasaarholt
thomasaarholt / docker_terminal.sh
Created June 6, 2022 08:23
Instructions for building a docker image and logging into its bash terminal
View docker_terminal.sh
# From a directory with a Dockerfile
# Example Dockerfile with "Dockerfile" as filename
FROM python:3.10-slim-buster
RUN pip install numpy
# Then, run the following
docker build -t your_image_name .
@thomasaarholt
thomasaarholt / cmap.py
Created January 26, 2022 13:16
Linear colormap from one rgb color to another
View cmap.py
from matplotlib.colors import LinearSegmentedColormap
def black_to_color(high_color: tuple, low_color: tuple = (0,0,0), name: str = "my_color", steps=256):
"Get linear colormap from one rgb color to another, defaulting from black"
r1,g1,b1 = low_color
r2,g2,b2 = high_color
cdict = {
'red': [(0.0, r1, r1),
@thomasaarholt
thomasaarholt / gist:4c63d9f15a6895a4153e9bfa98f75360
Created September 27, 2021 10:24
jupyter lab settings with auto closing brackets enabled in docker image
View gist:4c63d9f15a6895a4153e9bfa98f75360
cat /root/.jupyter/lab/user-settings/@jupyterlab/notebook-extension/tracker.jupyterlab-settings
{
// Notebook
// @jupyterlab/notebook-extension:tracker
// Notebook settings.
// **************************************
// Code Cell Configuration
// The configuration for all code cells.
"codeCellConfig": {
@thomasaarholt
thomasaarholt / check_docker_running.sh
Created August 24, 2021 08:10
Simple bash script to test if Docker is running
View check_docker_running.sh
if docker info > /dev/null 2>&1; then
: # pass
else
echo "Docker Daemon is not running. Please open it and retry."
exit -1
fi