Skip to content

Instantly share code, notes, and snippets.

View bbdaniels's full-sized avatar

Benjamin Daniels bbdaniels

View GitHub Profile
@bbdaniels
bbdaniels / scatter-loadings.do
Created March 6, 2020 19:47
Loadings graph with arbitrary components
// Get arbitrary loadings
// Data
sysuse auto.dta , clear
local variables length mpg price rep78
// Get labels
foreach var of varlist `variables' {
local `var' : var label `var'
}
@bbdaniels
bbdaniels / power-curve.do
Last active February 11, 2020 03:11
Make simple power curves for binary variables
tempname a b c
tw (function 1.4*sqrt((2/x)+(2/x)) , range(300 600) lc(red)) ///
(function 1.4*sqrt((3/x)+(3/(2*x))) , range(300 600) lc(red) lp(dash)) ///
(function sqrt(1/x) , range(300 600) lc(black) ) ///
, yscale(r(0)) ytit(" ") xtit("Number of Providers") ///
title("Within Case") ///
ylab(0 .05 "5p.p." .1 "10p.p." .15 "15p.p." .2 "20p.p.") ///
legend(on c(1) pos(9) ///
order( ///
@bbdaniels
bbdaniels / Edgeworth-box.do
Created January 23, 2020 20:18
Edgeworth box in Stata
clear
set obs 100
gen y = runiform() * 3
gen x = runiform() * 3
tw ///
(scatter x y) ///
(scatter x y , m(none) yaxis(2) xaxis(2)) ///
@bbdaniels
bbdaniels / regression-table.do
Created January 13, 2020 22:34
Create generic regression table using built-in commands.
// Demo code for creating simple regression table
sysuse auto.dta, clear
// Run regressions
reg price weight
su price if e(sample)
estadd scalar mean = r(mean)
est sto reg1
@bbdaniels
bbdaniels / Simulation: Big effects from small RCTs
Last active January 13, 2020 18:12
Simulation: Big and small effects from RCTs
// Simulation 1: Big effects from small RCTs
cap mat drop results
qui forv iter = 1/1000 {
clear
set obs 10000
gen x = rnormal() > 0
gen e = rnormal() * 4
@bbdaniels
bbdaniels / One.do
Created January 10, 2020 22:12
Assignment
*Part I*
*** Setup
clear all //clear any open datasets
cls //clear the screen
version 15
set more off
set linesize 255
*** Generating a random varibale
set obs 100000
@bbdaniels
bbdaniels / loop-over-letters.do
Created January 9, 2020 22:04
Loop over letters in Stata (such as for putexcel)
forv i = 1/26 {
local theLetter : word `i' of `c(ALPHA)'
di "`theLetter'"
}
@bbdaniels
bbdaniels / wage-premium.do
Last active January 8, 2020 18:46
Mincer regression for Econ lecture
clear // Reset the work space
set obs 100000 // Create empty units of observation
set seed 837169 // Fix randomization start point
// Generate ability scores 0-100
gen theta = 100*runiform()
// Fix parameters
local a = 100
local b = 2
@bbdaniels
bbdaniels / ritest-demo.do
Last active October 23, 2019 14:27
Demo example for [ritest] in Stata
// [ritest] example
// Create randomization program ------------------------------------------------
cap prog drop my_randomization
prog def my_randomization
syntax , [*]
// Must drop the variable for [ritest]. Make sure to keep it saved somewhere
cap drop treatment
@bbdaniels
bbdaniels / .gitignore
Last active December 11, 2020 17:16
gitignore
########################################################################
#
# .gitignore DIME template
# https://github.com/worldbank/dime-github-trainings/tree/master/GitHub-resources/DIME-GitHub-Templates
#
# We recommend that you create a .gitignore file using GitHub's tools and
# replace the content of that file with the content of this file. Otherwise
# you have to rename this file .gitignore. But if you rename the fine in a