Skip to content

Instantly share code, notes, and snippets.

View EconometricsBySimulation's full-sized avatar

Francis Smart EconometricsBySimulation

View GitHub Profile
# R - Doodling in R
# I am working on creating some functions that will be capable of creating shapes and plots that look hand drawn.
# I have made some progress in this goal.
# In that process I have also discovered that I can make some doodles that look hand drawn as well.
# In order to accomplish the goal of simulating hand drawing I want to simulate the momentum of hand writing.
@EconometricsBySimulation
EconometricsBySimulation / gist:6235945
Created August 14, 2013 21:39
2013-07-30 A bit of code showing how to do Structural Equation Modelling
clear
set obs 4000
gen id = _n
gen eta1 = rnormal()
gen eta2 = rnormal()
* Generate 5 irrelevant factors that might affect each of the
shinyServer(function(input, output) {
output$distPlot <- renderPlot({
# Take a dependency on input$goButton
input$goButton
# Use isolate() to avoid dependency on input$obs
dist <- isolate(rnorm(input$obs))
hist(dist)
})
})
sex ageYear ageMonth heightIn weightLb
f 11.91667 143 56.3 85
f 12.91667 155 62.3 105
f 12.75 153 63.3 108
f 13.41667 161 59 92
f 15.91667 191 62.5 112.5
f 14.25 171 62.5 112
f 15.41667 185 59 104
f 11.83333 142 56.5 69
f 13.33333 160 62 94.5
shinyServer(function(input, output) {
output$main_plot <- renderPlot(width = 400, height = 300, {
hist(faithful$eruptions,
probability = TRUE,
breaks = as.numeric(input$n_breaks),
xlab = "Duration (minutes)",
main = "Geyser eruption duration")
@EconometricsBySimulation
EconometricsBySimulation / cubes.R
Created September 10, 2014 00:25
Easy Bordered Cubes in R
library('rgl'); library('magrittr')
cube <- function(x=0,y=0,z=0, bordered=TRUE,
filled = TRUE, lwd=2, scale=1,
fillcol = gray(.95),
bordercol ='black', ...) {
mycube <- cube3d()
# Reduce size to unit
# adapted from John Fox's numbers2words function
require(magrittr); require(Rmpfr)
make.digits <- function(x) {
# This is a function breaks an input number x into the positive (left)
# and negative(right) elements and returns these as numbers
x <- toString(x)
negative <- substr(x,1,1)=="-"
if (negative) x <- substring(x,2)
@EconometricsBySimulation
EconometricsBySimulation / ebola.R
Last active August 29, 2015 14:06
Analysis of Ebola data
# First let's load some libraries
require('XML'); require('reshape2'); require('ggplot2')
require('magrittr') # See
# http://goo.gl/Wj5F87
# I have borrowed Andrie's code from stackoverflow
# http://goo.gl/noYVo7
source("http://goo.gl/w64gfp")
# Load in the google spreadsheet
@EconometricsBySimulation
EconometricsBySimulation / readGoogleSheet.R
Last active August 29, 2015 14:06
Read Google Spreadsheet into R
# This set of functions comes entirely form Andrie on stackoverflow
# http://stackoverflow.com/questions/22873602/importing-data-into-r-from-google-spreadsheet
readGoogleSheet <- function(url, na.string="", header=TRUE){
stopifnot(require(XML))
# Suppress warnings because Google docs seems to have incomplete final line
suppressWarnings({
doc <- paste(readLines(url), collapse=" ")
})
if(nchar(doc) == 0) stop("No content found")
@EconometricsBySimulation
EconometricsBySimulation / gist:0b54b14d3040d3e89709
Created July 20, 2014 02:33
Graphical Anlaysis of Trends in Name Data
require(plyr)
require(ggplot2)
require(scales)
# Download data from:
# http://www.ssa.gov/oact/babynames/names.zip
setwd("C:/Data/SS-names/")
files<-list.files()
files<-files[grepl(".txt",files)]