str(t1)
'data.frame': 45846 obs. of 3 variables:
$ year: int 2008 2008 2008 2008 2008 2008 2008 2008 2008 2008 ...
$ Bdcd: int 112001 112001 112001 112001 112001 112001 112001 112001 112001 112001 ...
$ age : num 0.589 0.597 0.6 0.603 0.605 0.608 0.616 0.619 0.622 0.625 ...
> temp1<-melt(t1,id=c('year','Bdcd'))
> temp2<-cast(temp1,year+Bdcd~variable,mean,na.rm=T)
> str(temp2)
List of 3
$ year: int [1:618] 2007 2007 2008 2008 2008 2008 2008 2008 2008 2008 ...
$ Bdcd: int [1:618] 122000 122001 112001 112002 112003 112004 112005 112006 122000 122001 ...
$ age : num [1:618] 0.1569 0.0807 0.4268 0.3747 0.227 ...
- attr(*, "row.names")= int [1:618] 1 2 3 4 5 6 7 8 9 10 ...
- attr(*, "idvars")= chr [1:2] "year" "Bdcd"
- attr(*, "rdimnames")=List of 2
..$ :'data.frame': 618 obs. of 2 variables:
.. ..$ year: int [1:618] 2007 2007 2008 2008 2008 2008 2008 2008 2008 2008 ...
.. ..$ Bdcd: int [1:618] 122000 122001 112001 112002 112003 112004 112005 112006 122000 122001 ...
..$ :'data.frame': 1 obs. of 1 variable:
.. ..$ variable: Factor w/ 1 level "age": 1
> fix(temp2)
> str(temp2)
'data.frame': 618 obs. of 3 variables:
$ year: num 2007 2007 2008 2008 2008 ...
$ Bdcd: num 122000 122001 112001 112002 112003 ...
$ age : num 0.1569 0.0807 0.4268 0.3747 0.227 ...
为什么fix前后temp2的结构会发生变化,cast函数有没有错?