Skip to content

Instantly share code, notes, and snippets.

View priscian's full-sized avatar

Jim Java priscian

  • Rochester, New York, USA
View GitHub Profile
@priscian
priscian / airs-global_20230714.csv
Created July 14, 2023 16:47
AIRS global temperature data 14 Jul 2023
year month yr_part AIRS v6 AIRS v7
2002 1 2002.04166666667
2002 2 2002.125
2002 3 2002.20833333333
2002 4 2002.29166666667
2002 5 2002.375
2002 6 2002.45833333333
2002 7 2002.54166666667
2002 8 2002.625
2002 9 2002.70833333333 -0.09 0.13
@priscian
priscian / paleotemperature-hockey-sticks.md
Last active September 4, 2024 05:10
A list of dozens of paleoclimate studies using various temperature proxies and methods in affirmation of Michael Mann's hockey stick result, which shows strong recent hemispheric and global warming.

Paleotemperature Hockey Sticks

This is a list of paleoclimate studies [263] that use a variety of temperature proxies and methodologies in affirmation of Michael Mann's hockey stick result [1], which shows strong recent hemispheric and global warming. The last column provides an exemplary figure from each paper.

The original MBH98 paper [1] has so far been cited 1200+ times (Web of Science).

N.B. For the original text list without hyperlinks or figures, go here. It's still being updated.

What do paleotemperature studies tell us in general?

@priscian
priscian / exogenous-adjusted-temps_20210706.csv
Created July 7, 2021 05:06
Global Average Temperatures Adjusted for ENSO, Volcanic, and Solar Influences
We can make this file beautiful and searchable if this error is corrected: It looks like row 4 should actually have 28 columns, instead of 5 in line 3.
year,month,yr_part,GISTEMP v4 Global,NCEI Global,HadCRUT4 Global,Cowtan & Way Krig. Global,BEST Global (Air Ice Temp.),JMA Global,RSS TLT 4.0 -70.0/82.5,UAH TLT 6.0 Global,JRA-55 Surface Air Global,ERA5 Surface Air Global,NCEP/NCAR R1 Surface Air Global,GISTEMP v4 Global (adj.),NCEI Global (adj.),HadCRUT4 Global (adj.),Cowtan & Way Krig. Global (adj.),BEST Global (Air Ice Temp.) (adj.),JMA Global (adj.),RSS TLT 4.0 -70.0/82.5 (adj.),UAH TLT 6.0 Global (adj.),JRA-55 Surface Air Global (adj.),ERA5 Surface Air Global (adj.),NCEP/NCAR R1 Surface Air Global (adj.),MEI Aggregate Global,SAOD Aggregate Global,TSI Aggregate Global
1970,1,1970.04166666667,-0.378,-0.3153,-0.254,-0.2344,-0.3547,-0.285,,,-0.2388,,-0.0844,-0.4097,-0.3542,-0.2989,-0.2691,-0.3811,-0.3186,,,-0.2641,,-0.1037,0.675,0.0243,1361.42382539004
1970,2,1970.125,-0.26,-0.2433,-0.197,-0.2174,-0.3547,-0.197,,,-0.2426,,-0.0359,-0.291,-0.2814,-0.2384,-0.251,-0.381,-0.2298,,,-0.2691,,-0.0586,0.575,0.0228,1361.42246993411
1970,3,1970.20833333333,-0.4313,-0.4
### For plots at https://twitter.com/priscian/status/1184499661656219651
## Install package "climeseries":
Sys.setenv(R_REMOTES_NO_ERRORS_FROM_WARNINGS = "true") # https://github.com/r-lib/remotes#environment-variables
devtools::install_github("priscian/climeseries")
## First plot: piecewise linear fit of major GAT series at significant changepoints
library(climeseries)
d <- get_climate_data(download = FALSE, baseline = TRUE)
series <- c("GISTEMP Global", "NCEI Global", "HadCRUT4 Global", "Cowtan & Way Krig. Global", "BEST Global (Air Ice Temp.)", "JMA Global", "RSS TLT 4.0 -70.0/82.5", "UAH TLT 6.0 Global", "ERA-Interim 2m Global", "ERA5 2m Global", "NCEP Surface Air Global")
We can make this file beautiful and searchable if this error is corrected: It looks like row 9 should actually have 8 columns, instead of 7 in line 8.
year,month,yr_part,ERSSTv4 Atlantic Ocean,ERSSTv4 Pacific Ocean,ERSSTv4 Indian Ocean,ERSSTv4 Southern Ocean,ERSSTv4 Global Ocean
1854,1,1854.04166666667,0.109615219846986,0.00810856138884089,-0.0531562424671316,-0.354793516611166,-0.166547788757771
1854,2,1854.125,0.0898816152520038,0.00270423193084818,-0.0675247599731813,-0.500833722330877,-0.182175581128681
1854,3,1854.20833333333,0.0911483542166944,0.109228358015051,0.244264331924758,-0.605689859612554,-0.146455536145382
1854,4,1854.29166666667,0.0239588344903376,0.0292574583500411,0.146145495328125,-0.640274652495903,-0.194732687760049
1854,5,1854.375,-0.151138676621214,-0.100746317468427,0.0570735296894928,-0.577829036483108,-0.219615877068618
1854,6,1854.45833333333,-0.299748110759373,-0.261371736259814,-0.203953388290672,-0.590797951411481,-0.266930774201547
1854,7,1854.54166666667,-0.232121093213366,-0.263557484837577,-0.297598934096288,-0.542104746907682,-0.24678567084919
1854,8,1854.625,-0.241215627483474,-0.229601270980333,-0.254614243830354,-0.401
@priscian
priscian / paleoclimate-hockey-stick-studies.txt
Last active September 4, 2024 05:13
A list of dozens of paleoclimate studies using various temperature proxies and methods in affirmation of Michael Mann's hockey stick result, which shows strong recent hemispheric and global warming.
This is a list of paleoclimate studies [2–63] that use a variety of temperature
proxies and methodologies in affirmation of Michael Mann's hockey stick result
[1], which shows strong recent hemispheric and global warming.
1. Mann ME, Bradley RS, & Hughes MK: Global-scale temperature patterns and
climate forcing over the past six centuries. Nature 392(6678):779–787, 1998.
dx.doi.org/10.1038/33859.
2. Jones PD, Briffa KR, Barnett TP, & Tett SFB: High-resolution palaeoclimatic
records for the last millennium: Interpretation, integration and comparison with
@priscian
priscian / ushcn-raw-vs-final.R
Last active March 22, 2023 16:10
Find the Differences between USHCN Raw & Homogenized Data
### Find the Differences between USHCN Raw & Homogenized Data.
### Inspired by: https://moyhu.blogspot.com/2014/05/nonsense-plots-of-ushcn-adjustments.html
rm(list = ls(all.names = TRUE))
library(pacman) # install.packages("pacman")
#library(climeseries) # devtools::install_github("priscian/climeseries")
jjmisc::reload_all("climeseries", redocument = FALSE)
p_load(R.utils, matrixStats, tictoc)
@priscian
priscian / plot_exxon-1982-v-instrumental.R
Created October 28, 2018 07:14
Plotting Current Instrumental Temp. Series against the Exxon 1982 Projections
#jjmisc::reload_all("climeseries", redocument = FALSE)
library(climeseries) # devtools::install_github("priscian/climeseries")
library(png)
pngFileName <- system.file("inst/images/1982-Exxon-Memo-to-Management-About-CO2_edited.png", package = "climeseries")
img <- readPNG(pngFileName, info = TRUE)
info <- attr(img, "info")
## N.B. Change this to a directory where you'd like to store the image.
setwd("C:/Users/priscian/Downloads/images/climate")
@priscian
priscian / Ljungqvist 2010 Reconstruction+HadCRUT4_0004.6-2017.9_ma120_baseline1961-1990.R
Created January 20, 2018 20:42
Plots the Ljungqvist 2010 temperature reconstruction series along with the instrumental HadCRUT4 30N-90N (120-mo. moving average) temp series.
library(climeseries) # devtools::install_github("priscian/climeseries")
library(xlsx)
ljungqvist <- xlsx::read.xlsx2(system.file("extdata/paleo/ljungqvist2010.xls", package="climeseries"), sheetName="Reconstruction", startRow=11, check.names=FALSE, stringsAsFactors=FALSE)
matches <- str_match(ljungqvist$Decade, "(\\d+)\u2013(\\d+)")
ljungqvist$yr_part <- apply(matches[, 2:3], 1, function(x) mean(as.numeric(x)))
yearRange <- range(as.numeric(matches[, 2:3]))
allYears <- seq(yearRange[1], yearRange[2])