使用标准函数或dbplyr对R中的特定行进行子集/过滤?

时间:2019-05-22 20:06:45

标签: dataframe dplyr rstudio row subset

我正在尝试对BLS中的数据进行子集化,以将具有NAIC代码的行区分为不同的类别。它们当前全部集中在一列中,#的长度范围为2-6。理想情况下,我希望数据框包含4个新的二进制列(0、1),以便我可以使数据框具有所有原始值,并分别调用新的NAIC代码列。

数据:

naic_codes year             area_title          own_title                                             industry_title annual_avg_emplvl
1           10 2017 Kansas City, MO-KS MSA      Total Covered                                   101 Total, all industries           1031619
2           10 2017 Kansas City, MO-KS MSA Federal Government                                   10111 Total, all industries             26982

我尝试了几种方法来进行子集划分,以便可以仅对相应的长度条目进行过滤。我尝试过的变体包括过滤器,选择,子集,将值更改为因子/字符/数字/整数。

df3 %>% filter_at(vars(starts_with("naic_codes")), any_vars(.<= 99))

new <- df2[nchar(df2$naics_code) ==2]

我收到错误消息或未使用的R参数,带有NULL值的新向量或具有相同值而没有任何过滤的新向量。

1 个答案:

答案 0 :(得分:0)

一种简单的方法是将列转换为因子并使用1种热编码