删除除相关数据以外的所有内容
Deleting everything but relevant Data
我使用代码:
student_data1 <- student_data1[!(student_data1$gvkey == 6310),] %>%
头()
删除 gvkey 6310 的公司,但它正在删除其他所有内容并保留 6310。
我需要如何更改代码?如果我想删除 6310 和 9555,代码会是什么样子?
提前致谢! :)
当我们有数据可以查看以确定发生了什么时,这总是很有帮助的。将来您可以使用 dput(head(student_data1, 10))
之类的方式共享您的一些数据,然后将其输出复制并粘贴到您的问题中。我们将生成一些数据以在此处显示示例。
student_data1 <-
data.frame(
gvkey = rep(c(6310 , 9555, 2222, 11, 2), each = 10),
Var1 = rnorm(50)
)
head(student_data1, 5)
#> gvkey Var1
#> 1 6310 0.065167828
#> 2 6310 0.334672998
#> 3 6310 -0.459434631
#> 4 6310 -0.002706843
#> 5 6310 0.596642565
nrow(student_data1)
#> [1] 50
从您发布的代码来看,它似乎应该满足您的需求,只需使用您使用的语法删除 gvkey
6310,尽管通常我们会使用 !=
而不是 !(==)
。我唯一可以推测的是,您可能错过了实际脚本中的 !
。
df <- student_data1[!(student_data1$gvkey == 6310) , ]
head(df, 5)
#> gvkey Var1
#> 11 9555 -0.1338284
#> 12 9555 -3.4963800
#> 13 9555 0.7090384
#> 14 9555 -0.5466933
#> 15 9555 -1.5392845
nrow(df)
#> [1] 40
要删除多个值,通常最简单的方法是使用 %in%
运算符。
df <- student_data1[!student_data1$gvkey %in% c(6310, 9555) , ]
head(df, 5)
#> gvkey Var1
#> 21 2222 2.9606101
#> 22 2222 0.7001521
#> 23 2222 0.1065952
#> 24 2222 0.7103071
#> 25 2222 -0.3279968
nrow(df)
#> [1] 30
由 reprex package (v2.0.1)
于 2021-12-08 创建
我使用代码:
student_data1 <- student_data1[!(student_data1$gvkey == 6310),] %>%
头()
删除 gvkey 6310 的公司,但它正在删除其他所有内容并保留 6310。
我需要如何更改代码?如果我想删除 6310 和 9555,代码会是什么样子?
提前致谢! :)
当我们有数据可以查看以确定发生了什么时,这总是很有帮助的。将来您可以使用 dput(head(student_data1, 10))
之类的方式共享您的一些数据,然后将其输出复制并粘贴到您的问题中。我们将生成一些数据以在此处显示示例。
student_data1 <-
data.frame(
gvkey = rep(c(6310 , 9555, 2222, 11, 2), each = 10),
Var1 = rnorm(50)
)
head(student_data1, 5)
#> gvkey Var1
#> 1 6310 0.065167828
#> 2 6310 0.334672998
#> 3 6310 -0.459434631
#> 4 6310 -0.002706843
#> 5 6310 0.596642565
nrow(student_data1)
#> [1] 50
从您发布的代码来看,它似乎应该满足您的需求,只需使用您使用的语法删除 gvkey
6310,尽管通常我们会使用 !=
而不是 !(==)
。我唯一可以推测的是,您可能错过了实际脚本中的 !
。
df <- student_data1[!(student_data1$gvkey == 6310) , ]
head(df, 5)
#> gvkey Var1
#> 11 9555 -0.1338284
#> 12 9555 -3.4963800
#> 13 9555 0.7090384
#> 14 9555 -0.5466933
#> 15 9555 -1.5392845
nrow(df)
#> [1] 40
要删除多个值,通常最简单的方法是使用 %in%
运算符。
df <- student_data1[!student_data1$gvkey %in% c(6310, 9555) , ]
head(df, 5)
#> gvkey Var1
#> 21 2222 2.9606101
#> 22 2222 0.7001521
#> 23 2222 0.1065952
#> 24 2222 0.7103071
#> 25 2222 -0.3279968
nrow(df)
#> [1] 30
由 reprex package (v2.0.1)
于 2021-12-08 创建