Elon Musk’s Big Fucking Rocket


Wait But Why com um post super bacana sobre as ambições da SpaceX:

We’ll follow the Twitter feeds of some of our favorite journalists on Mars to keep up with what’s happening there. We’ll all get hooked on Mars’s first hit reality shows. And some of us will start thinking, “Should I sign up to go to Mars one of these years before I get too old?”

PS: apresentação do Elon Musk.

Economistas como engenheiros? Ou, leia Who Gets What — and Why


Viajar faz bem, nem que seja para nos forçar a ler na sala de espera. No caminho para Los Angeles finalmente tive tempo para terminar o livro do Alvin Roth Who Gets What – and Why. Confesso que por alguma razão — que não sei bem precisar, talvez pela pretensão do título — estava receoso. Mas como admiro o trabalho do Roth não poderia deixar de ler. Ainda bem. Esse é, sem dúvida, um dos melhores livros de economia (para o público geral) publicados recentemente.

Quando Alvin Roth ganhou o Nobel (ok, o Prêmio dado pelo Banco Central Sueco em memória de Alfred Nobel) os temas “desenho de mercados” e “economistas como engenheiros” vieram à tona e vimos muita coisa absurda escrita por aí — isso para dizer o mínimo. Não vou compartilhar os links para poupar essas pessoas que talvez deixaram-se levar mais por preconceitos e velhos dogmas do que pela razão. Criticaram provavelmente sem conhecer a literatura e talvez hoje tenham noção do que escreveram.

Mas, na verdade, esse tipo de reação não era inesperado. A ideia de uma economia parecida com uma “engenharia” pode parecer aviltante para muitos colegas, sejam liberais ou intervencionistas. Ora, afinal de contas, a economia é uma ciência social, não é mesmo!? Como podem economistas agirem como engenheiros? O problema é que muitos economistas/cientistas sociais estão acostumados a discutirem de maneira solta e informal pretensas “grandes perguntas” e interpretam qualquer assertiva dentro desse contexto. Quando você lida com questões do naipe “o planejamento estatal é bom ou ruim para a economia?” pensar em economistas como engenheiros certamente vai acender um alerta.

Mas não se trata disso. A ideia aqui é simplesmente resolver problemas reais e prementes presentes em “mercados” (no sentido amplo do termo), seja na esfera pública ou privada — daí o “engenheiro”. Suponha que você tenha uma empresa como o Google e queira saber a melhor forma de vender espaços para os anúncios. Ou que você tenha uma empresa como o eBay e queira saber a melhor forma de fazer com que compradores e vendedores saibam quem tem uma boa reputação de verdade. Ou, ainda, que você trabalhe para o governo e queira reformular o sistema que distribui alunos entre as escolas públicas. Como abordar essas questões?

A coisa não para aí — leilões de espectro, regras para negociações nas bolsas de valores, mecanismos para doações de rins, alocação de médicos/advogados recém-formados no mercado de trabalho… todos problemas importantes e reais do dia-a-dia com uma alta demanda por pessoas com a capacidade analítica de solucioná-los. E nisso a economia pode ajudar bastante (principalmente teoria dos jogos). O Vale do Silício, por exemplo, tem espaço para profissionais com essa formação.

A maioria dos economistas não vai trabalhar diretamente com “as grandes questões” e um nicho de atuação importante e crescente do economista é entender melhor como mercados funcionam, como e por que alguns mercados funcionam melhor do que outros, e como podemos atuar para resolver problemas reais desses mercados. O livro do Roth é um ótimo lugar para começar a pensar sobre esse assunto.

51xg1ql-zgl-_sx329_bo1204203200_

Detectando reviews falsos na Amazon


Agora que comecei a usar mais a Amazon no dia-a-dia (usava basicamente para livros e eletrônicos) percebi a quantidade assustadora de reviews falsos que existem por lá. Isso naturalmente levou a outra pergunta: que tal usar análise de dados para filtrar os reviews falsos dos verdadeiros?

Pois bem, como quase toda a idéia que temos, alguém já a implementou. Então se você ainda não conhece, vai aqui a dica do fakespot. Usando técnicas de processamento de linguagem natural e machine learning, o site tenta identificar quais e quantos reviews são realmente autênticos. O serviço poderia ser melhor executado, mas tem funcionado bem nos casos que testei.

Personalizando seu gráfico do ggplot2 – Exports and Imports, William Playfair


O ggplot2 é muito bom para explorar visualmente, de forma dinâmica, sua base de dados.  Mas às vezes queremos editar cada detalhe do gráfico para uma publicação, é possível fazer isso?

Como, por exemplo, reproduzir o famoso gráfico de exportações e importações do William Playfair?

Playfair-bivariate-area-chart

Hoje resolvi testar o quão difícil seria gerar uma imagem parecida e, brincando um pouco com os parâmetros, cheguei na figura abaixo. É um pouco trabalhoso – pois temos que colocar cada texto separadamente – mas não é difícil, nem tão demorado assim.

playfair

Se você tiver um pouco mais de paciência para ajustar detalhes talvez consiga tornar a reprodução ainda mais fiel. E, caso o faça, favor compartilhar o código com todos por aqui!

***

Segue abaixo o código para gerar o gráfico acima. Os dados bem como o próprio código também estão no github.

 

# load packages -----------------------------------------------------------
library(reshape2)
library(ggplot2)

# prepare data for ggplot2 ------------------------------------------------
## data extracted from https://plot.ly/~MattSundquist/2404/exports-and-imports-to-and-from-denmark-norway-from-1700-to-1780/#plot
playfair <- readRDS("william_playfair.rds")

## create min for geom_ribbon
playfair$min <- with(playfair, pmin(exp, imp))
year <- playfair$year

## melt data
molten_data <- melt(playfair, id.vars = c("year", "min"))

# ggplot2 -----------------------------------------------------------------
ggplot(molten_data, aes(x = year, y = value)) +
geom_line(aes(col = variable), size = 1) +
geom_ribbon(aes(ymin = min, ymax = value, fill = variable), alpha = 0.3) +
scale_color_manual(values = c("darkred", "gold3"), guide = F) +
scale_fill_manual(values = c("#90752d", "#BB5766"), guide = F) +
theme_bw() +
annotate("text", x = year[5], y = 100000, label = "Line", angle = 25, size = 3, family = "Garamond") +
annotate("text", x = year[6] - 100, y = 104000, label = "of", angle = 0, size = 3, family = "Garamond") +
annotate("text", x = year[7], y = 101000, label = "Imports", angle = 340, size = 3, family = "Garamond") +
annotate("text", x = year[5] + 400, y = 73000, label = "Line", angle = 345, size = 3, family = "Garamond") +
annotate("text", x = year[6], y = 70000, label = "of", angle = 330, size = 3, family = "Garamond") +
annotate("text", x = year[7] - 200, y = 64000, label = "Exports", angle = 335, size = 3, family = "Garamond") +
annotate("text", x = year[8], y = 83000, label = "italic('BALANCE AGAINST')", angle = 0, family = "Garamond", parse = TRUE) +
annotate("text", x = year[16] + 400, y = 110000, label = "italic('BALANCE in\nFAVOUR of\nENGLAND')", angle = 0, family = "Garamond", parse = TRUE) +
annotate("text", x = year[16], y = 82000, label = "Imports", angle = 30, size = 3, family = "Garamond") +
annotate("text", x = year[14] + 200, y = 131000, label = "Exports", angle = 65, size = 3, family = "Garamond") +
ggtitle("Exports and Imports to and from DENMARK & NORWAY from 1700 to 1780") +
scale_x_date(breaks = seq(year[1], year[18], by = "10 years"),
labels = format(seq(year[1], year[18], by = "10 years"), "%Y")) +
scale_y_continuous(breaks = seq(0, 190e3, by = 10e3),
labels = seq(0, 190, by = 10)) +
theme(title = element_text(size = 8, face = 'bold', family = "Garamond"),
axis.title = element_blank(),
axis.text = element_text(family = "Garamond"),
panel.grid.minor = element_blank())