首页 > 解决方案 > 在 R 中按国家/地区抽样观测

问题描述

假设我有一个数据框(df),它由 4000 个观察值组成,其结构如下

Country | Date | Log_GDP | Log_DMSP | Log_Population. 

每个国家/地区在数据框中出现多次,因为这是面板数据。我将如何从这个数据框中随机抽取 200 个国家,以便将它们输入到看起来像这样的 lm() 函数中?

lm(Log_GDP ~ 1 + Log_Population + Log_DMSP+as.factor(Date),data=sampled_df)

标签: rtidyr

解决方案


您可以sample在国家/地区使用功能

rand_countries <- sample(unique(df$Country), size = 200, replacement = FALSE), ] 

并从数据框中选择这些值

sampled_df <- df[df$Country %in% rand_countries, ]

推荐阅读