Archive for January, 2010
Soc Mass Media, week 4
| Gabriel |
Monday’s lecture was about the business logic of large media corporations and Marxist hegemony theory. Wednesday’s lecture was about the Hotelling model of product variety and monopoly. Next week there’s only one lecture because I’m giving a midterm. The lecture will be on Peterson and Berger (and the Lopes/Dowd extensions of the same) on product variety and monopoly, which I make a case is in it’s mature form really a niche partitioning model with Schumpeterian twist.
Sorry for the light-posting for the last couple weeks. Between a really nasty and persistent cold, giving a guest lecture to our pro-seminar, and having to read 30 graduate applications a week I’ve been exhausted.
Soc of Mass Media, week 3
| Gabriel |
There was no lecture on Monday for MLK. Wednesday’s lecture was on media ownership policy. The next three lectures will be about the consequences of corporate media ownership.
Age, Period, Flim Flam
| Gabriel |
A few months ago, The Chronicle had a very interesting article on generation gurus, who claim insight into the “millenials,” or as actual social scientists boringly call them, “the 1980s and 1990s birth cohorts.” Lots of organizations, including college admissions boards, are really interested in these gurus’ advice on how to understand the kids these days. (Which reminds me of the obnoxious creative team of Smitty and Kurt, who were brought on to Sterling Cooper to sell Martinson’s coffee to the Pepsi generation).
I remember way back when I was in high school reading a long-form magazine article (The Atlantic?) on Howe and Strauss and I thought it was a great theory, in part because some of the details seemed like they were (or ought to be) true and in part because the generational dialectic struck me as plausible. Basically they say that idealistic generations are followed by cynics who in turn are followed by pragmatic workhorses who are in turn followed by idealists, with the mechanism being that each generation reacts against its parents’ excesses. According to this schema, the reason I grew up listening to Nirvana was as a reaction to the “All you need is love” stuff of the boomers.
When I got all growed up and actually started dealing with, you know, systematic data, I was more than a little disappointed that while cohort change is not always linear, it is basically monotonic and it is definitely not cyclical or dialectical. I’m primarily an orgs guy rather than a people guy, but I’ve still done some moderately extensive age/period/cohort stuff with the GSS and SPPA and on everything I looked at (mostly social attitudes and cultural consumption), there’s absolutely no evidence whatsoever for the Howe and Strauss dialectic. So for instance, if you look at strong preference for opera and classical you first have to limit the data to BA or higher education (less educated people don’t like this music regardless of cohort) and then you see a clear trend that the music is popular with educated people born before 1950 and unpopular with educated people born after 1950. There is no distinction between “boomers” and “gen X” in the data, and in fact older boomers are still into high culture. The only issue that I’m aware of that even vaguely approximates the Howe and Strauss model is abortion attitudes, but a) the cohort effects on abortion attitudes are weak and b) the effects of cohort on other sex/reproduction opinions, like gay marriage, are monotonic.
So given that the empirical evidence for these ideas is so weak, why are college administrators, marketers, etc, so into it? I think the answer has to be that it was facially plausible and more importantly that it was pretty clear. A money quote from the article is:
Amid this complexity, the Millennials message was not only comforting but empowering. “It tickled our ears,” says Palmer H. Muntz, director of admissions and an enrollment-management consultant at Lincoln Christian University, in Illinois. “It packaged today’s youth in a way that we really wanted to see them. It gave us a formula for understanding them.”
This is reminiscent of the argument that John Campbell gave for explaining the popularity of supply side economics. His argument is basically that the idea gained popularity not because it had especially powerful theory or empirics behind it, but because it was comprehensible and gave a tractable guide to action. In theory, Lafferism is contingent on the important question of where the current tax regime lies relative to the curve’s maximum, but in practice this contingency was elided and people took it to mean “always cut taxes.” That is the appeal of the idea was not so much that we had good reasons to think it reflected reality (or more specifically, that it was applicable to current circumstances), but because it clearly prescribed action — and I think it’s worth adding, actions that were desirable in a free lunch kind of way. In the same way, if you read Howe and Strauss, they are relentlessly positive about the millennials, portraying them as a dialectically-generated reproduction of the go-getters who first stormed the beaches of Normandy and then nested into Levittown. Victory, affluence, swing music, what’s not to love about these kids?
You can see similar wishful thinking in the eagerness of municipal officials to throw consulting contracts at Richard Florida. Florida’s basic shtick is that if Methenburg, PA wants to develop they should just rezone old warehouses and put up a sign reading “Methenburg Arts District,” this will attract artists, who in turn will attract engineers, who in turn will turn Methenburg into the next Silicon Valley. I always imagine after Florida gives his powerpoint, the city councilmen or county selectmen are enthusiastically coming up with ideas about how to be “cool” like Murray Hewitt on Flight of the Conchords. It sounds like a perfect plan: Methenburg get to be “cool,” we get development, and it doesn’t require either making expenditures or forgoing revenues to any appreciable extent.
If only it were true.
Misc links
- Rufus Pollock uses the occasion of Argentinian copyright extension to take extremely long copyright terms to the woodshed. He shows that once you consider the decay in demand for cultural products (most of which are essentially ephemera) and net present value discounting, the marginal incentive effects of further extending already long copyright terms are absolutely infinitesimal. The most plausible alternative explanation is that extremely long copyright terms represents public choice more than public policy. Although he doesn’t say so, I think one obvious way to demonstrate this is that the extension is retroactive. Even if another twenty years is basically worthless in prospect to a new market entrant, it’s worth a lot to those incumbents who own those few works that have proven to be of lasting appeal. Also worth noting is that Pollock posts his code.
- In oral arguments at the SCOTUS, a lawyer used the word “orthogonal.” Roberts and Scalia were fascinated by the word and seemed to want to make it the secret word of the day. I myself am fond of the word as it’s a pretty clear way to get across concepts like “lack of interaction effects,” which is a more subtle concept than merely “uncorrelated.” For instance, see my discussion of weighting and when it’s ok to omit controls.
- In another SCOTUS case, the NFL gave exclusive merchandise rights for every team in the league to Reebok. A small hat company is suing the NFL on antitrust grounds and so the court has to decide if the the teams are independent firms and the NFL is a trade group (the plaintiff’s theory) or the NFL is a firm and the teams are franchisees (the NFL’s theory). Given how expansion teams and things like that work, it seems the latter. There’s a related question about whether a “Rams” hat is in competition with a “Saints” hat (the plaintiff’s theory) or with a “Cardinals” hat (the NFL’s theory). Given that the price of NFL merchandise rose by 50% after the exclusive concession deal, it seems like the former is the obvious answer. Even though I’ve never watched a football game in my life, I still find this really interesting as it involves a lot of fairly subtle question about monopolistic competition, substitution/categorization, strong externalities, etc.
Soc of Mass Media, week 2
| Gabriel |
I now have a real page on ITunes U. I suggest this version as (unlike the Bruincast RSS), I’ve edited the meta-text to have informative “name” and “comments” fields.
On Monday’s lecture I talked about the superstar effect. On Wednesday’s lecture I talked about promotion, including payola. Next Monday is MLK day but on Wednesday I’m doing antitrust.
No problem
| Gabriel |
UCLA has created a “report bias” website where you can file a report about “Any demeaning, derogatory or otherwise offensive behavior directed toward any individual on the basis of race, gender, ethnicity, sexual orientation, religion or other group characteristics.” Now given that sociologists study issues like race, gender, ethnicity, sexual orientation, and other group characteristics, and it’s at least conceivable that we might have research findings on these issues that people might consider to be “demeaning, derogatory or offensive” this might seem like a threat to our academic freedom. Fortunately this isn’t a problem in practice because (as section “D” of the ASA code of ethics will tell you) sociologists are scrupulous respecters of dignity and worth who don’t tolerate any form of bias.
I’m just glad I don’t teach classical theory because I really don’t see how I’d be able to lecture about Weber’s ideas of contrasting thrifty Calvinists and decadent Catholics or Durkheim’s ideas about suicidal Lutherans (let alone his very serious attempts to grapple with 19th century racial phrenology) or Marx’s thoughts on “the Jewish Question”.
Soc of Mass Media, week 1
| Gabriel |
I’m podcasting my soc of mass media undergrad course this term. I’m hoping to annotate the metadata and add it to ITunes U, but for now there’s a regular RSS feed.
- Class website see the weekly subpages for slides, outlines, and citations.
- Podcast RSS (generic)
- Podcast RSS (ITunes)
On Monday’s lecture I gave the intro and a broad overview of the course design and theories that will be covered, followed by some bureaucratic housekeeping. On Wednesday’s lecture I talked about the implications of the media being a high fixed-cost, low marginal cost industry. Next week I’m doing the superstar effect and the struggle to coopt promotional media (e.g., payola).
Also of possible interest, my colleague Mark Kleiman is podcasting his drug policy class. If you’re not familiar with Mark’s work, he basically has an ambitious proposal to drastically cut incarceration and recidivism by instituting an extremely aggressive parole/probation system.
MDC Code (updated)
| Gabriel |
I continue to make baby steps towards a self-contained ado file for my multilevel diffusion curves (MDC) technique. This is tricky as the model has to be run through a quadratic. My co-author and his RA wrote a spreadsheet that does this, but it’s kind of a pain to copy the output from Stata into the spreadsheet. Anyway, the current version of the script still requires you to run it through the spreadsheet, but it makes it a lot more convenient by putting it in the shape the spreadsheet expects and it gives you the Bass model for the baseline (no independent variables) model. Eventually I’ll work myself up to figuring out how to do the matrix multiplication in Stata and then it will be totally plug and chug.
Here’s how you’d specify:
mdcrun newadoptions innovationlevelvariable timelevelvariable, i(serialno) nt(laggedcumulativeadoptions) saving(resultsfile)
Here’s the program itself:
capture program drop quadraticprocess program define quadraticprocess, rclass matrix betas=e(b) matrix varcovar=e(V) mata: st_matrix("se",sqrt(diagonal(st_matrix("varcovar")))') matrix results= betas\se matrix rowname results = beta se * A B C in the quadratic sense matrix colname results = B C A *several abs() fcns necessary for se to avoid imaginary numbers and keep se>=0 local nmax = (-results[1,1] - ((results[1,1]^2)-4*results[1,3]*results[1,2])^0.5) / (2*results[1,2]) local nmax_se = abs(`nmax'-(-(results[2,1]+results[1,1])-((results[2,1]+results[1,1])^2-4*(results[2,3]+results[1,3])*(results[2,2]+results[1,2]))^0.5)/2/(results[2,2]+results[1,2])) local endo = - results[1,2] local endo_se = abs(`endo'-(-results[2,2])) local exo = results[1,3] / `nmax' local exo_se = abs(`exo'- results[2,3] /`nmax_se') return local N = `e(N)' return local nmax = `nmax' return local nmax_se = `nmax_se' return local endo = `endo' return local endo_se = `endo_se' return local exo = `exo' return local exo_se = `exo_se' end capture program drop mdcrun program define mdcrun *dependency: mat2txt set more off syntax varlist , i(string asis) nt(string asis) [SAVing(string asis)] disp as text "{hline 80}" disp as text "MDCRUN" disp as text "This code gives information which must be interpreted" disp as text "with the spreadsheet at http://gabrielr.bol.ucla.edu/mdc.xls" disp as text "{hline 80}" gettoken first varlist : varlist preserve gen cons=1 foreach var in `varlist' cons { quietly drop if `var'==. quietly gen `var'_1=`nt'*`var' quietly gen `var'_2=`nt'*`nt'*`var' } * create `varlist_ext' as an alternate varlist macro that has the interactions foreach var in `varlist' { local varlist_ext="`varlist_ext' `var'_1 `var'_2 `var'" } local varlist_ext="`varlist_ext' cons_1 cons_2" quietly tabstat `varlist', save stat(mean sd) matrix varlistdescriptive=r(StatTotal)' matrix varlistdescriptive=varlistdescriptive\(1,0) disp as text "Baseline model" xtreg `first' cons_1 cons_2, re i(`i') quadraticprocess matrix baselineresults = results[1...,"A"], results[1...,"B"], results[1...,"C"] matrix colnames baselineresults = raw nt nt2 matrix baselineresults = baselineresults' disp as text "model: adds = ( `r(exo)' + `r(endo)' Nt ) (`r(nmax)' - Nt) " disp "error: adds = ( `r(exo_se)' + `r(endo_se)' Nt ) (`r(nmax_se)' - Nt) " disp "{hline 80}" disp "Covariates Model" *coefficients are vars + interactions with nt and nt^2" xtreg `first' `varlist_ext', re i(`i') matrix betas=e(b) matrix varcovar=e(V) mata: st_matrix("se",sqrt(diagonal(st_matrix("varcovar")))') foreach figure in betas se { local counter=1 foreach var in `varlist' cons { matrix `figure'_`var' = (`figure'[1,`counter'], `figure'[1,`counter'+1], `figure'[1,`counter'+2]) local counter=`counter'+3 } matrix `figure'grid = (., ., .) foreach var in `varlist' cons { matrix `figure'grid = `figure'grid \ `figure'_`var' } matrix define `figure'grid = `figure'grid[2...,....] matrix colnames `figure'grid = nt nt2 raw matrix rownames `figure'grid = `varlist' cons } matrix biggrid=varlistdescriptive, betasgrid[1...,"raw"], segrid[1...,"raw"], betasgrid[1...,"nt"], segrid[1...,"nt"], betasgrid[1...,"nt2"], segrid[1...,"nt2"] matrix colnames biggrid = mean sd b_raw se_raw b_nt se_nt b_nt2 se_nt2 matrix rownames biggrid = `varlist' cons di as text "{hline 80}" di as text "The following should be fed into the spreadsheet http://gabrielr.bol.ucla.edu/mdc.xls" disp "The baseline model goes in L7:N9" *transpose? beta, se should be columns matlist baselineresults disp as text _newline "The covariate model should go in cells xx:xx" di as text "Excel Cols: | H & J | D & F | L & N | T & V" _continue matlist biggrid disp "Please see AC-AJ for interpretation" *write to disk or print to screen: varlistdescriptive col 1+2, beta_col3, se_col3, beta_col1, se_col1, beta_col2, se_col2 *tab or comma as "delimchar" disp as text "{hline 80}" disp as text "For citation and help with theory/interpretation, see" disp as text `"Rossman, Chiu, and Mol. 2008. "Modeling Diffusions of"' disp "Multiple Innovations Via Multilevel Diffusion Curves:" disp `"Payola in Pop Music Radio" Sociological Methodology"' disp "38:201-230." _newline if "`saving'"!="" { mat2txt , matrix(baselineresults) saving(`saving') title(baseline model, L7:N9) replace mat2txt , matrix(biggrid) saving(`saving') title(covariates, D-V) append } restore end
(Btw, here’s the older version of the MDC code.)
Sampling on the independent variables
| Gabriel |
At Scatterplot, Jeremy notes that in a reader poll, Megan Fox was voted both “worst” and “sexiest” actress. Personally, I’ve always found Megan Fox to be less sexy than a painfully deliberate simulacra of sexy. The interesting question Jeremy asks is whether this negative association is correlation or causation. My answer is neither, it’s truncation.
What you have to understand is that the question is implicitly about famous actresses. It is quite likely that somewhere in Glendale there is some barista with a headshot by the register who is both fugly and reads lines like a robot. However this person is not famous (and probably not even Taft-Hartleyed). If there is any meritocracy at all in Hollywood, the famous are — on average — going to be desirable in at least one dimension. They may become famous because they are hot or because they are talented, but our friend at the Starbucks on Colorado is staying at the Starbucks on Colorado.
This means that when we ask about the association of acting talent and sexiness amongst the famous, we have censored data where people who are low on both dimensions are censored out. Within the truncated sample there may be a robust negative association, but the causal relationship is very indirect, and it’s not as if having perky breasts directly obstructs the ability to convincingly express emotions (a botoxed face on the other hand …).
You can see this clearly in simulation (code is at the end of the post). I’ve modeled a population of ten thousand aspiring actresses as having two dimensions, body and mind, each of which is drawn from a random normal. As built in by assumption, there is no correlation between body and mind.
Stars are a subsample of aspirants. Star power is defined as a Poisson centered on the sum of body and mind (and re-centered to avoid negative values). That is, star power is a combination of body, mind, and luck. Only the 10% of aspirants with the most star power become famous. If we now look at the correlation of body and mind among stars, it’s negative.
This is a silly example, but it reflects a serious methodological problem that I’ve seen in the literature and I propose to call “sampling on the independent variable.” You sometimes see this directly in the sample construction when a researcher takes several overlapping datasets and combines them. If the researcher then uses membership in one of the constituent datasets (or something closely associated with it) to predict membership in another of a constituent datasets (or something closely associated with it), the beta is inevitably negative. (I recently reviewed a paper that did this and treated the negative associations as substantive findings rather than methodological artifacts).
Likewise, it is very common for a researcher to rely on prepackaged composite data rather than explicitly creating original composite data. For instance, consider that favorite population of econ soc, the Fortune 500. Fortune defines this population as the top 500 firms ranked by sales. Now imagine decomposing sales by industry. Inevitably, sales in manufacturing will be negatively correlated with sales in retail. However this is an artifact of sample truncation. In the broader population the two types of sales will be positively correlated (at least among multi-dimensional firms).
clear set obs 10000 gen body=rnormal() gen mind=rnormal() *corr in the population corr body mind scatter body mind graph export bodymind_everybody.png, replace *keep only the stars gen talent=body+mind+3 recode talent -100/0=0 gen stardom=rpoisson(talent) gsort -stardom keep in 1/1000 *corr amongst stars corr body mind scatter body mind graph export bodymind_stars.png, replace
Praxis
| Gabriel |
Recent Comments