ネストされたデータフレーム内で回帰を実行しようとしていますas described here。私は多くのレベルの固定効果があるので、私の目的のためにlfe
パッケージからfelm
を使用しています。felmはbroom :: augment/purrrでは動作しませんが、整頓で動作します
上記の例での代わりにfelm
を使用して例を再現すると、broom::augment
を使用しようとするまではほとんどの場合動作します。
library(tidyverse)
library(broom)
library(gapminder)
library(lfe)
by_country <- gapminder %>%
group_by(continent, country) %>%
nest()
country_felm <- function(data){
felm(lifeExp ~ year, data = data)
}
by_country <- by_country %>%
mutate(model = purrr::map(data, country_felm)
)
すべてが、私は、コードの最後の行、おそらく別のfelm
癖にpurrr::map
式の代わりに関数を使用する必要があったことを除いて、この時点までに動作します。
broom
を使用してモデル出力を抽出しようとすると、glance
とtidy
で動作しますが、augment
では動作しません。次のエラーメッセージでaugment
結果を使用しようとすると
by_country %>% unnest(model %>% purrr::map(broom::glance))
by_country %>% unnest(model %>% purrr::map(broom::tidy))
by_country %>% unnest(model %>% purrr::map(broom::augment))
:
Error in mutate_impl(.data, dots) :
argument must be coercible to non-negative integer
In addition: Warning message:
In seq_len(nrow(x)) : first element used of 'length.out' argument