Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/70.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
基于列表的子集data.frame_R_Dataframe_Data.table_Subset - Fatal编程技术网

基于列表的子集data.frame

基于列表的子集data.frame,r,dataframe,data.table,subset,R,Dataframe,Data.table,Subset,样本数据: 我需要仅基于其他数据集上可用的县代码(FIP)对data.frame进行子集划分。我有一个来自另一个数据集的所有fips代码的列表,我正试图删除所有不在列表中的代码,但运气不太好 从这个小样本数据集中有三个FIP(800980118013),那么在这个列表的上下文中,我如何删除除8009和8011之外的所有FIP呢 以下是我尝试过的: prism.dd您可以尝试使用data.table library(data.table) setkey(setDT(prism.d), fips)

样本数据:

我需要仅基于其他数据集上可用的县代码(FIP)对data.frame进行子集划分。我有一个来自另一个数据集的所有fips代码的列表,我正试图删除所有不在列表中的代码,但运气不太好

从这个小样本数据集中有三个FIP(800980118013),那么在这个列表的上下文中,我如何删除除8009和8011之外的所有FIP呢

以下是我尝试过的:


prism.dd您可以尝试使用
data.table

library(data.table)
setkey(setDT(prism.d), fips)
fips <- c(8009, 8011)
fips1 <- data.table(fips)
Subpr <- prism.d[fips1]
数据
prism.d对此表示感谢,但问题是我有一个很大的fips代码列表(779),我需要将其子集。因此,虽然您的答案适用于本例,但它不适用于我拥有的大型数据集,因为我需要在列表中列出所有779个fips代码。见上文。我用unique()将fips代码存储到$fips中,我将其更改为
prism.dd让我们使用。而且,我不认为!在这里是合适的,因为我正试图具体地子集某些fips代码
setkey(setDT(prism.d), fips)
fips <- unique(DustBowlData_Pre$fips)
fips <- data.table(fips)
Subpr <- prism.d[fips]
library(data.table)
setkey(setDT(prism.d), fips)
fips <- c(8009, 8011)
fips1 <- data.table(fips)
Subpr <- prism.d[fips1]
fips2 <- fips #renaming because `prism.d` has the `same` column name `fips`
prism.d[fips %in% fips2]
 prism.d <- read.csv('test-1.csv')