Skip to content

Instantly share code, notes, and snippets.

Keybase proof

I hereby claim:

  • I am rexarski on github.
  • I am rexarski (https://keybase.io/rexarski) on keybase.
  • I have a public key whose fingerprint is 56BC AFC4 48A1 9D30 9522 4FEE 86AB F8A5 E6BB A7E7

To claim this, I am signing this object:

@rexarski
rexarski / markdown.R
Created August 8, 2018 02:39 — forked from alistaire47/markdown.R
read markdown table into R data frame
# base R version
read.markdown <- function(file, stringsAsFactors = FALSE, strip.white = TRUE, ...){
if (length(file) > 1) {
lines <- file
} else if (grepl('\n', file)) {
con <- textConnection(file)
lines <- readLines(con)
close(con)
} else {
lines <- readLines(file)
@rexarski
rexarski / random-walk.R
Created August 29, 2018 04:59
a simple random walk implementation
set.seed(1024)
sim <- 100
sim_result <- rep(0,sim)
for (i in 1:sim) {
count <- 0
initial <- 0
while (initial != 15) {
initial <- initial + sample(c(-1,1),1,prob=c(0.5,0.5))
count <- count + 1
}
@rexarski
rexarski / README.md
Created November 22, 2018 13:49 — forked from jslefche/README.md
ggplot2: theme_black()

Black theme for ggplot2

This is an additional theme for ggplot2 that generates an inverse black and white color scheme.

Example

ggplot(mtcars, aes(wt, mpg)) + geom_point()
# Add theme_black()
ggplot(mtcars, aes(wt, mpg)) + geom_point(color = "white") + theme_black()
@rexarski
rexarski / bayes-premier-league.R
Created April 20, 2019 13:28
A Bayesian hierrchical model for the prediction of Premier League results.
library(rjags)
library(coda)
library(mcmcplots)
# 2015-2016 Premier League result table
# data source: https://github.com/vijinho/epl_mysql_db/blob/master/csv/E0-2015.csv
dat <- read.csv("E0-2015.csv")
head(dat)
dat <- dat[,3:6]
@rexarski
rexarski / redpocket.py
Created July 5, 2019 03:35
Emulate WeChat redpocket 模拟微信红包
import random
legit = 0
while legit != 1:
x = eval(input("How much money do you like to put in the red pocket? "))
y = eval(input("How many red pockets would you like to send? "))
if x < y * 0.01:
print('Not enough money to send, sorry!')
@rexarski
rexarski / non-ascii.R
Created December 6, 2019 09:52 — forked from nassimhaddad/non-ascii.R
remove non-ascii characters
# remove non-ascii characters
df$text <- gsub("[^\x20-\x7E]", "", df$text)
@rexarski
rexarski / racing-bar.R
Created June 7, 2020 12:28
Use ggplot2 and gganimate to implement a simple racing barplot.
library(tidyverse)
library(gganimate)
library(janitor)
library(gapminder)
df <- gapminder %>%
janitor::clean_names() %>%
group_by(year) %>%
mutate(rank = rank(-life_exp),
Value_rel = life_exp/life_exp[rank==1],
@rexarski
rexarski / my_weather_data.json
Last active June 12, 2020 05:35
my_weather_data.json
[{"time": 1514782800, "summary": "Clear throughout the day.", "icon": "clear-day", "sunriseTime": 1514809280, "sunsetTime": 1514842810, "moonPhase": 0.48, "precipIntensity": 0, "precipIntensityMax": 0, "precipProbability": 0, "temperatureHigh": 18.39, "temperatureHighTime": 1514836800, "temperatureLow": 12.23, "temperatureLowTime": 1514894400, "apparentTemperatureHigh": 17.29, "apparentTemperatureHighTime": 1514844000, "apparentTemperatureLow": 4.51, "apparentTemperatureLowTime": 1514887200, "dewPoint": -1.67, "humidity": 0.54, "pressure": 1028.26, "windSpeed": 4.16, "windGust": 13.98, "windGustTime": 1514829600, "windBearing": 309, "cloudCover": 0.02, "uvIndex": 2, "uvIndexTime": 1514822400, "visibility": 10, "temperatureMin": 6.17, "temperatureMinTime": 1514808000, "temperatureMax": 18.39, "temperatureMaxTime": 1514836800, "apparentTemperatureMin": -2.19, "apparentTemperatureMinTime": 1514808000, "apparentTemperatureMax": 17.29, "apparentTemperatureMaxTime": 1514844000, "date": "2018-01-01"}, {"time": 15148
@rexarski
rexarski / animated-line-chart.R
Created June 13, 2020 08:37
A piece of R Script used to produce an animated line chart.
library(tidyverse)
library(gganimate)
library(ggthemes)
df <- read_csv("pd.csv") %>%
select(-c("Day")) %>%
rename("Email" = `Email Inbox`,
"RIL" = `Reeder Read it Later`,
"Podcasts" = `Podcasts Episodes`,
"YouTube" = `YouTube Watch Later`) %>%