R 当响应者编号在列中重复时,数据帧的子集行
我有一个巨大的数据集,部分是汇集的横截面数据,部分是面板数据:R 当响应者编号在列中重复时,数据帧的子集行,r,filter,duplicates,subset,R,Filter,Duplicates,Subset,我有一个巨大的数据集,部分是汇集的横截面数据,部分是面板数据: Year Country Respnr Power Nr 1 2000 France 1 1213 1 2 2001 France 2 1234 2 3 2000 UK 3 1726 3 4 2001 UK 3 6433
Year Country Respnr Power Nr
1 2000 France 1 1213 1
2 2001 France 2 1234 2
3 2000 UK 3 1726 3
4 2001 UK 3 6433 4
我想从组合数据中筛选面板数据,并尝试了以下操作:
> anyDuplicated(df$Respnr)
[1] 45047 # Out of 340.000
dfpanel<- subset(df, duplicated(df$Respnr) == TRUE)
>anyDuplicated(df$Respnr)
[1] 340000人中有45047人
dfpanel虽然我还没有弄明白为什么前面的方法不起作用,但下面确实提供了一个有效的解决方案。我只是简单地拆分了前面的方法。该解决方案添加了一列面板
,在我的例子中,这实际上是一个受欢迎的添加
df$panel <- duplicated(df$Respnr)
dfpanel <- subset(df, df$panel == TRUE)
df$面板
df$panel <- duplicated(df$Respnr)
dfpanel <- subset(df, df$panel == TRUE)