Explaining some .assign() idioms
Explaining pandas assignment, callable arguments, dictionary unpacking, and pandas 3 column expressions, with a comparison to dplyr across().
From newest to oldest.
Browse selected notes by topic.
.assign() idiomsExplaining pandas assignment, callable arguments, dictionary unpacking, and pandas 3 column expressions, with a comparison to dplyr across().
Using the sec-submissions package to prepare Parquet data, preserve timestamp evidence, and distinguish dated audits from subsequent corrections.
Updated, freshly executed Python Polars solutions for the Ball and Brown (1968) chapter, including the income-versus-cash-flow comparison.
Updated, freshly executed Python Polars solutions for the panel-data chapter, including disclosure regressions and design checks.
Updated benchmarks comparing PostgreSQL-to-Parquet export paths, with newer packages and a local database.
Dates, times, time zones, and the difficulties of moving temporal data between R and DuckDB, using SEC filings.
A short comment on research design, parallel trends, and the interpretation of difference-in-differences.
An update on inconsistent time zones in SEC submissions data, linking to the longer dates-and-times note.
A waterfall chart of Boeing’s purchase price allocation for Spirit AeroSystems, rebuilt from the reported data.
An introduction to the June 2026 direct-method cash-flow finding, linking the existing XBRL analysis.
Using SEC XBRL data and R to investigate how often companies report direct-method cash flow statements.
db2pq is on CRANA short introduction to the R package for exporting PostgreSQL tables to Parquet, including sources beyond WRDS.
Why working through code and exercises can reveal what drives a research paper's results, illustrated by the panel-data chapter.
Five types of researchers, in a 2019 presentation to prospective Honours students, shared again in 2026.
Using the Ball and Brown research design to examine the claim that the cash flow statement is the most important financial statement.
An introduction to freely available consolidation accounting materials, with editable Quarto sources.
Using retail-sales queries from SQL for Data Analysis to explore visualization with ggsql.
Using Polars to query the SEC's DERA financial-statement notes data.
A fast-paced introduction to Python Polars and statistics, with current setup instructions and templates.
plotnine more 'Pythonic'Exploring how plotnine's grammar of graphics can fit more naturally into Python code.
A short account of moving the notes PDF workflow to Typst, linking the maintained collection and sources.
Discussion and coding solutions for the Beaver (1968) chapter, using Python Polars to examine market reactions to earnings announcements.
Comparing ways to move data from PostgreSQL into Parquet for analysis with modern dataframe tools.
Using Python, Ibis, and db2pq to turn database queries into local Parquet data.
Moving the results of lazy R database queries into Parquet files with db2pq.
Replicating a classic accounting study with Python Polars, and examining what its results tell us about earnings and stock returns.
Practical ways to manage research data with Python, Parquet, and a local library of WRDS data.
An R version of the guide to managing research data with Parquet and db2pq.
From data preparation to a PDF manuscript with a single click.
Building a data library from US bank Call Reports, with Polars and DuckDB.
A short tip for RStudio users on Linux, with current Posit Package Manager setup guidance.
The often overlooked work of collecting research data, and the useful role spreadsheets can play.
Working with hierarchical JSON data using the SEC's filing-submissions records.
Where data curation fits into the data science workflow, illustrated with Australian stock-market data.
comp.g_secdComparing approaches to querying Compustat Global's daily security data, from SAS on WRDS to local Parquet files.
Using Polars and Ibis to prepare large datasets for analysis in pandas.
Running SAS on WRDS and bringing the results into a pandas dataframe with wrds2pg.
Using ChatGPT for feedback and Git to track changes in complex writing projects.
What academic research might learn from open-source software about sharing and improving code.
Making data collection reproducible, using employment data and a published research project as a case study.
dbplyrTwo examples of how requests from users become useful features in open-source software.
Rebuilding an SQL query with common table expressions and dbplyr, and checking what the query actually computes.
A look at Ibis and the connection it offers between dataframe APIs and SQL databases.
Why the existence of good research does not resolve the harder problem of distinguishing it from unreliable findings.
An exploration of initial public offerings on the Australian Securities Exchange.
An introduction to SIRCA's daily prices for ASX-listed securities and their use in measuring returns.
Exploring SIRCA's collection of Australian mergers and acquisitions data.
farr: reusable code and teaching dataWhy packaging functions and small datasets helps teaching and research, with an update to the original release advice.
Where Melbourne's skyline would fit in a published US ranking, with a reproducible calculation from historical building data.
Working through Sunnova's investment tax credits, tax equity financing, and noncontrolling interests to understand value for shareholders.
Universities, willing learners, and meal completion certificates.
A rough replication of the McKinsey Valuation book's industry growth chart, with the original figure, source code, and discussion of the sample and industry mapping.
Unpacking the elasticity and passthrough assumptions behind the April 2025 tariff formula, combining the LinkedIn post and its mathematical explanation.
Reconciling Tesla's capital expenditure and PP&E disclosures, and testing explanations for an apparent discrepancy.
Durable skills, job readiness, and what accounting and finance degrees offer.
An exploration of Oxford's seasons using weather data and Python.
Examining how Yahoo Finance's closing and adjusted prices translate into stock returns.
A proposal for learning data analytics through real data, complete code, visualisation, and core ideas from business and economics.
Working with Australian Bureau of Statistics retail-sales data in R.
Meaning, incentives, and finger traps in academic research.
Getting financial-statement and footnote data from SEC EDGAR's bulk XBRL files.
Comparing SEC XBRL records with PCAOB data to investigate potentially missing Form AP filings.
Using list columns and Parquet to represent Australian charity registry data in a single file.
A simulation asks whether a reported pattern can arise without the earnings management it is claimed to reveal.
A short exploration of bicycle data from the City of Melbourne.
Downloading and working with PCAOB Form AP data in R, illustrated by variations in engagement-partner names and audit workloads.
Using temperature data to examine when winter and summer begin and end in Boston.
Comparing calendar conventions with temperature-based definitions of Melbourne's seasons.
Looking at Sydney's temperature data to think about the boundaries of winter and summer.
Exploring sunrise and sunset times in Melbourne and Boston.
crsp.dsf)Checking the familiar assumption of 252 trading days per year against CRSP's daily stock data.
A plotting challenge: how should a chart represent the cumulative return on a stock?
Exploring faster alternatives to SQLite for the analyses in Tidy Finance.
Calculating stock betas with DuckDB, following the approach used in Tidy Finance.
Re-examining experimental results and the consequences of changing contested observations.
P-hacking, replication, and the incentives that shape the credibility of empirical accounting research.
Translating SAS code into R to incorporate delisting returns in monthly CRSP data.
Examining how corrections affect the central claims of a machine-learning study of accounting fraud.
A response to Alex Edmans on research, institutional loyalty, collaboration, and impact in accounting academia.
A historical argument about the costs and benefits of accounting research, its connection to teaching, and institutional demand.
Reflections on teaching accounting, including the role of concepts, context, and judgment.
How GitHub can fit into a research workflow that preserves code and makes results easier to reproduce.
What a retraction reveals about the value of accessible data, code, and incentives to check published findings.