ok, just for fun, I started looking at the FEC campaign filings in response to the twitter threads outlined in this diary.
so here is a quickie guide into going through the FEC data….
First, where to get it..
Go to this page...
the data you want is “operating expenditures”…
then check the cycle you want and download the zip file, which will be named oppexpYY.zip where YY is the election cycle year.
once you extract the zip file, it will be a text file named oppexp.txt WITHOUT the election cycle year, so obviously you can’t extract 2 different cycle files in the same place unless you rename the first one.
this is pipe-delimited data and run under 2 million rows.
So if you want to use excel to look at it for people who are not database savvy (it will exceed the row limit in the old excel, but the new version shouldn’t have a problem), you can import it using the plain text under data, just make sure that you put the “|” as the delimiter in whatever program you use. I used mysql, so it was “fields terminated by ‘|’.
There are a few dozen bad records in any given year, so some records will import wrong.
There are no headers, but here are the fields in order with the max length of each. (in case you are loading into a database.
| cmte_id | char(9) | YES | | NULL | |
| amnd | char(1) | YES | | NULL | |
| rpt_yr | char(4) | YES | | NULL | |
| RPT_TP | char(3) | YES | | NULL | |
| IMAGE_NUM | char(18) | YES | | NULL | |
| LINE_NUM | int(10) | YES | | NULL | |
| FORM_TYP_CODE | char(8) | YES | | NULL | |
| SCHED_TP_CD | char(8) | YES | | NULL | |
| NAME | char(200) | YES | | NULL | |
| CITY | char(30) | YES | | NULL | |
| STATE | char(2) | YES | | NULL | |
| ZIP | char(9) | YES | | NULL | |
| TRAN_DATE | char(8) | YES | | NULL | |
| TRANS_AMT | decimal(14,2) | YES | | NULL | |
| TRANS_PGI | char(5) | YES | | NULL | |
| PURPOSE | char(100) | YES | | NULL | |
| CATEGORY | char(3) | YES | | NULL | |
| CATEGORY_DESC | char(40) | YES | | NULL | |
| MEMO_CD | char(1) | YES | | NULL | |
| MEMO_TEXT | char(100) | YES | | NULL | |
| ENTITY_TYP | char(3) | YES | | NULL | |
| SUB_ID | char(19) | YES | | NULL | |
| FILE_NUM | char(7) | YES | | NULL | |
| TRAN_ID | char(32) | YES | | NULL | |
| BACK_REF_TRAN_ID | char(32) | YES | | NULL | |
the key ones are cmte_id (tells you which campaign, the trans_amt (which is how they discovered the potential personal expenses paid by the campaign by Santos) and the Name, which tells who they paid.
Any transaction below $200.00 to a single recipient does not need receipts to substantiate it (but would if there were multiple payments that were in the aggregate over $200, which is why I scanned for transactions between 199.90 and 199.99.