Skip to content

Instantly share code, notes, and snippets.

import psycopg2
import time
import selenium
from selenium import webdriver
import openpyxl
from openpyxl import load_workbook
import subprocess
from email.mime.text import MIMEText
from email.mime.application import MIMEApplication
from email.mime.multipart import MIMEMultipart
@datavudeja
datavudeja / fulltextsearch.py
Created December 9, 2025 17:36 — forked from josephernest/fulltextsearch.py
Examples of FullTextSearch, spellfix, FullTextSearch+spellfix together, with Python and Sqlite
import sqlite3
db = sqlite3.connect(':memory:')
c = db.cursor()
c.execute('CREATE TABLE mytable (description text)')
c.execute('INSERT INTO mytable VALUES ("Riemann")')
c.execute('INSERT INTO mytable VALUES ("All the Carmichael numbers")')
print '1) EQUALITY'
c.execute('SELECT * FROM mytable WHERE description == "Riemann"'); print 'Riemann:', c.fetchall()
@datavudeja
datavudeja / pd_upsert.py
Created December 9, 2025 14:39 — forked from mcchran/pd_upsert.py
Pandas upsert
import pandas as pd
from functools import wraps
from typing import Union, List, Callable, Any
def upsert_df(target_df: pd.DataFrame, key_columns: Union[str, List[str]]):
"""
Decorator that performs an upsert operation on a target DataFrame.
Args:
target_df: The DataFrame to upsert into
@datavudeja
datavudeja / EDA.py
Created December 9, 2025 14:29 — forked from adwiteeya3/EDA.py
DataScienceSeries : EDA
#####################################################
# Setting the Stage: Our Dataset
#####################################################
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
import plotly.express as px
import plotly.graph_objects as go
@datavudeja
datavudeja / plot-frame-sizes.py
Created December 9, 2025 14:27 — forked from maxsharabayko/plot-frame-sizes.py
A Python script to plot video frame sizes and frame types as a bar chart, calculate and plot 100ms, 1s and 3s moving average bitrate values.
# SPDX-License-Identifier: MPL-2.0
# Author: Maxim Sharabayko
# See https://maxsharabayko.github.io/blog/posts/plot-vc-frame-size/
import click
import pandas as pd
from bokeh.plotting import figure, show, output_file
from bokeh.io import output_notebook
from bokeh.transform import factor_cmap
from bokeh.models import Legend, LegendItem
from bokeh.layouts import column
@datavudeja
datavudeja / basics.py
Created November 26, 2025 17:31 — forked from mjdecker/basics.py
Python language examples with notes
# General Information
# * High-level programming language
# * General-purpose (vs. domain specific)
# * Created by Guido van Rossum (1991)
# * Emphasizes:
# * Code readability
# * Highly-expressive syntax
#
#
# Some specifics
@datavudeja
datavudeja / diretory_tree_database.py
Created November 25, 2025 14:47 — forked from hikineet0/diretory_tree_database.py
Script to create a relational database out of a user input root directory's directory tree or to query such database.
from __future__ import annotations
import os
import sys
import json
import pprint
import sqlite3
import argparse
from pathlib import Path
from typing import cast, List, NewType, Tuple, TypedDict, Generator, Union
@datavudeja
datavudeja / autoreload.py
Created November 24, 2025 15:01 — forked from MU-Software/autoreload.py
Python script auto reloader (directory watcher)
import os
import sys
import time
import hashlib
import pathlib as pt
import subprocess as sp
from watchdog.observers import Observer
from watchdog.events import PatternMatchingEventHandler
import asyncio
import functools
import threading
from contextlib import asynccontextmanager, contextmanager
from typing import Any, Callable
@contextmanager
def my_cont_mgr(tag: str):
print(f"{tag}: f entering!")
@datavudeja
datavudeja / state_class_patch.py
Created November 19, 2025 16:34 — forked from tvst/state_class_patch.py
An alternative API for st.session_state using a class decorator.
"""An alternative API for st.session_state using a class decorator.
So instead of doing this...
if "run_counter" in st.session_state:
st.session_state.run_counter = 0
st.session_state.run_counter += 1
st.write("Number of reruns:", st.session_state.run_counter)