按行名称索引data.frame的另一个意外行为

时间:2015-10-15 09:04:41

标签: r dataframe subset

我使用因子索引而不是字符索引data.frame并收到错误的行。我期待得到警告。怎么解释这个?

df<-data.frame(A=1:4, B=2:5, C=3:6, row.names = c("6", "8", "9", "19"))
ci<-row.names(df)
fi<-as.factor(ci)

df
   A B C
6  1 2 3
8  2 3 4
9  3 4 5
19 4 5 6

ci[1]
[1] "6"

fi[1]
[1] 6
Levels: 19 6 8 9

df[ci[1],]
  A B C
6 1 2 3

df[fi[1],]
  A B C
8 2 3 4

0 个答案:

没有答案