despite the american community survey's larger size, the cps-asec contains many more variables related to employment, sources of income, and insurance - and can be trended back to harry truman's presidency. aside from questions specifically asked about an annual experience (like income), many of the questions in this march data set should be treated as point-in-time statistics. cps-asec generalizes to the united states non-institutional, non-active duty military population.

interviews are conducted in march about experiences during the previous year. the file labeled 2012 includes information (income, work experience, health insurance) pertaining to 2011. when you use the current population survey to talk about america, subract a year from the data file name.

that's not true :) in order to get perfect standard errors with the acs, you just need to use the mse option, described here: http://tolstoy.newcastle.edu.au/R/packages/11/0785.html

the acs code currently in my github repository uses the survey package and matches census numbers exactly, however i haven't published it yet because it doesn't work on computers with very limited resources (less than 4GB RAM)

Thank you for putting up this code. I am trying to work with the CPS for 2011 (that is, data from the 2012 March ASEC).

I have downloaded all Microdata from 2005 to 2013. I am following and modifying the example you provide in the "2012 asec -analysis example.R" file, but cannot get my results to match up with Census Bureau published results, nor can I create (survey weighted) histograms.

to get median household income, i believe you'd need a table that's one record per household and uses the household weights and replicate-weights. the asecXX tables created by the download automation script is one record per person and actually deletes the household-level tables (search the script for "drop table household"). try `svyquantile(~ptotval,subset(y,a_age>14 & ptotval>0),0.5)` and you should get very close to the median personal income tables on the same website (note the census often uses a slightly-modified dataset from the public use file). and, of course, see my replication script for an exact match of both statistic and standard error.

you've found a bug in the survey package's 3.29-5 version of the svyhist() function when used on replicate-weighted database-backed designs. it's been documented and sent to dr. lumley. assuming you have a moderately powerful computer, you can work around this bug by reading the data all into memory `db <- dbConnect( SQLite() , "cps.asec.db" ) ; asec12 <- dbReadTable( db , "asec12" ) ; y <- svrepdesign( weights = ~marsupwt, repweights = "pwwgt[1-9]", type = "Fay", rho = (1-1/sqrt(4)), data = asec12 , combined.weights = T )` and then `svyhist(~ptotval , y )` should work as normal