全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
2282 2
2012-07-26
> df <- data.frame(v=c(1,2,3),f=c('2','1','3'))  
> df
  v f
1 1 2
2 2 1
3 3 3
> df$f <- factor(df$f, levels=c('3','2','1'),labels=c('b','a','c'))
> df
  v f
1 1 a
2 2 c
3 3 b
>  df$f <- as.numeric(df$f)
> df
  v f
1 1 2
2 2 3
3 3 1
变成numeric,为什么顺序变了呢? 谢谢!

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-1-4 17:23:08
看瞎了...
dff<- as.numeric(as.character(dff))
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-6-19 15:44:20
> df <- data.frame(v=c(1,2,3),f=c('2','1','3'))
> df
  v f
1 1 2
2 2 1
3 3 3
> df$f<-factor(df$f, levels=c('3','2','1'),labels=c('b','a','c'))
> df
  v f
1 1 a
2 2 c
3 3 b
> as.character(df$f)
[1] "a" "c" "b"
> df$f
[1] a c b
Levels: b a c
> df <- data.frame(v=c(1,2,3),f=c('2','1','3'))  
> df
  v f
1 1 2
2 2 1
3 3 3
>
> df$f<-factor(df$f, levels=c('1','2','3'),labels=c('a','b','c'))
> df
  v f
1 1 b
2 2 a
3 3 c
>
> df$f<-as.numeric(df$f)
> df
  v f
1 1 2
2 2 1
3 3 3
levels最好按1,23从小到大排,这样就不会出错了
levels=c(“1”,“2”,“3”)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群