R:列上的子集数据框 as.factor() 产生空子集

问题描述

如何获得此数据框的简单(非空)子集,其中匹配的列是一个因素?

初始...

> df$STATE <- as.factor(df$STATE)

头:

> head(df)

     YEAR    STATE              TYPE.OF.PRODUCER ENERGY.soURCE        GEN
1191 1990 US-TOTAL Total Electric Power Industry          Coal 1594011479
2662 1991 US-TOTAL Total Electric Power Industry          Coal 1590622748
4153 1992 US-TOTAL Total Electric Power Industry          Coal 1621206039
5673 1993 US-TOTAL Total Electric Power Industry          Coal 1690070232
7210 1994 US-TOTAL Total Electric Power Industry          Coal 1690693864
8771 1995 US-TOTAL Total Electric Power Industry          Coal 1709426468

级别:

> levels(df$STATE)

 [1] "  "       "AK"       "AL"       "AR"       "AZ"       "CA"      
 [7] "CO"       "CT"       "DC"       "DE"       "FL"       "GA"      
[13] "HI"       "IA"       "ID"       "IL"       "IN"       "KS"      
[19] "KY"       "LA"       "MA"       "MD"       "ME"       "MI"      
[25] "MN"       "MO"       "MS"       "MT"       "NC"       "ND"      
[31] "NE"       "NH"       "NJ"       "NM"       "NV"       "NY"      
[37] "OH"       "OK"       "OR"       "PA"       "RI"       "SC"      
[43] "SD"       "TN"       "TX"       "US-TOTAL" "UT"       "VA"      
[49] "VT"       "WA"       "WI"       "WV"       "WY"      

str(df)

> str(df)
 'data.frame':  30 obs. of  5 variables:
 $ YEAR            : int  1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 ...
 $ STATE           : Factor w/ 53 levels "  ","AK","AL",..: 46 46 46 46 46 46 46 46 46 46 ...
 $ TYPE.OF.PRODUCER: Factor w/ 6 levels "Combined Heat and Power,Commercial Power",..: 6 6 6 6 6 6 6 6 6 6 ...
 $ ENERGY.soURCE   : Factor w/ 10 levels "Coal","Geothermal",..: 1 1 1 1 1 1 1 1 1 1 ...
 $ GEN             : num  1.59e+09 1.59e+09 1.62e+09 1.69e+09 1.69e+09 ...

一次尝试:

> df[df$STATE == 'US-TOTAL',]

<0 rows> (or 0-length row.names)
[1] YEAR             STATE            TYPE.OF.PRODUCER ENERGY.soURCE   
[5] GEN

另一种尝试:

> subset(df,STATE == 'IL')

<0 rows> (or 0-length row.names)
[1] YEAR             STATE            TYPE.OF.PRODUCER ENERGY.soURCE   
[5] GEN

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)