Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 当响应者编号在列中重复时,数据帧的子集行_R_Filter_Duplicates_Subset - Fatal编程技术网

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)