Skip to content

Instantly share code, notes, and snippets.

Avatar

Christian Stade-Schuldt Tafkas

View GitHub Profile
@Tafkas
Tafkas / computeSunrise.js
Last active May 6, 2020
A simple sunrise-sunset algorithm taken from http://williams.best.vwh.net/sunrise_sunset_algorithm.htm in JavaScript
View computeSunrise.js
function computeSunrise(day, sunrise) {
/*Sunrise/Sunset Algorithm taken from
http://williams.best.vwh.net/sunrise_sunset_algorithm.htm
inputs:
day = day of the year
sunrise = true for sunrise, false for sunset
output:
time of sunrise/sunset in hours */
View berlin_marathon_participants_2014.py
#!/usr/bin/env python
# encoding: utf-8
"""
berlin_marathon_participants_2014.py
Created by Christian Stade-Schuldt on 2013-11-12.
"""
import urllib
import json
@Tafkas
Tafkas / berlin_marathon_2014_participants.R
Created Nov 13, 2013
Distribution of Birth Year and Top 10 Participating Nations in Berlin Marathon 2014
View berlin_marathon_2014_participants.R
Distribution of Birth Year and Top 10 Participating Nations in Berlin Marathon 2014
setwd("~/")
bm <- read.csv("BerlinMarathon2014.csv", header=T)
library(ggplot2)
p <- ggplot(bm, aes(birth_date, ..density..))
p <- p + geom_histogram(binwidth=1, colour = "black", fill = "lightblue") + geom_density()
p + ggtitle("Distribution of Birth Year for the Berlin Marathon 2014") + xlab("Year of Birth") + ylab("Density")
# get the top 10 particpating nations
@Tafkas
Tafkas / xport-temp.sh
Created Nov 13, 2013
Export RRDTool database to xml
View xport-temp.sh
#!/usr/bin/env bash
rrdtool xport -s now-3h -e now --step 300 \
DEF:a=/home/pi/weather/temperatures.rrd:temps1:AVERAGE \
DEF:b=/home/pi/weather/temperatures.rrd:temps2:AVERAGE \
DEF:c=/home/pi/weather/temperatures.rrd:temps3:AVERAGE \
DEF:d=/home/pi/weather/temperatures.rrd:temps4:AVERAGE \
DEF:e=/home/pi/weather/temperatures.rrd:temps5:AVERAGE \
DEF:f=/home/pi/weather/temperatures.rrd:temps6:AVERAGE \
XPORT:a:"Livingroom" \
@Tafkas
Tafkas / tmpdb.sh
Created Nov 13, 2013
Create RRDTool database for storing temperature values
View tmpdb.sh
#!/usr/bin/env bash
rrdtool create temperatures.rrd \
--start N \
--step 300 \
DS:temps1:GAUGE:1200:-40:50 \
DS:temps2:GAUGE:1200:-40:50 \
DS:temps3:GAUGE:1200:-40:50 \
DS:temps4:GAUGE:1200:-40:50 \
DS:temps5:GAUGE:1200:-40:50 \
@Tafkas
Tafkas / fetch_wde_data.sh
Created Nov 13, 2013
Fetch data from USB-WDE1 receiver and write it to RRDTool database
View fetch_wde_data.sh
#!/usr/bin/env bash
# Receive weather data from remote USB WDE1 and store it into database
# Loop forever to read data from USB WDE1
socat / dev/ttyUSB0, B9600 STDOUT | \
while read line
do
if [["$ {line%% *}" == '$ 1']] then
# Format data
"{? line # 1, 1,} $" tmp = `echo | tr ',' ','`.
@Tafkas
Tafkas / createhighchartfromxml.js
Last active Feb 23, 2017
Parse xml file generated from RRDTool export and create Highchart series
View createhighchartfromxml.js
$.ajax({
type: "GET",
url: "data/temperature24h.xml",
dataType: "xml",
success: function(xml) {
var series = []
//define series
$(xml).find("entry").each(function() {
var seriesOptions = {
@Tafkas
Tafkas / activity_extractor.py
Created Nov 17, 2013
Extracts duration from gpx and tcx files for further processing
View activity_extractor.py
#!/usr/local/bin/python
# encoding: utf-8
"""
activity_extractor.py
Created by Christian Stade-Schuldt on 2013-10-29.
"""
import os
from lxml import etree as et
from datetime import timedelta, datetime
@Tafkas
Tafkas / goeuro_test.py
Created Nov 21, 2013
Python solution to the GoEuroTest
View goeuro_test.py
#!/usr/bin/env python
# encoding: utf-8
"""
Created by Christian Stade-Schuldt on 2013-11-12.
"""
import sys
import os
import csv
import json
@Tafkas
Tafkas / rmsle.py
Created Nov 25, 2013
Compute the Root Mean Squared Log Error for hypothesis h and targets y
View rmsle.py
import numpy as np
def rmsle(h, y):
"""
Compute the Root Mean Squared Log Error for hypthesis h and targets y
Args:
h - numpy array containing predictions with shape (n_samples, n_targets)
y - numpy array containing targets with shape (n_samples, n_targets)
"""
You can’t perform that action at this time.