T尽管参数中有NA.rm=T,但仍返回NA

T尽管参数中有NA.rm=T,但仍返回NA,r,tapply,R,Tapply,我想使用tapply函数为R中的数据集的子组生成摘要(平均值)。数据集=VehicleData”。在将数据分组为2个因素后,我想计算响应变量“HWY_MPG”的平均值;“类型”和“驱动”“。数据集中缺少一些数据,因此我在参数中使用了na.rm=T。但是,在我应用该函数后,Nas仍然返回。请问我该怎么办 tapply(VehicleData$HWY_MPG,list(VehicleData$Type,VehicleData$Drive),mean,na.rm=T)

我想使用tapply函数为R中的数据集的子组生成摘要(平均值)。数据集=VehicleData”。在将数据分组为2个因素后,我想计算响应变量“HWY_MPG”的平均值;“类型”和“驱动”“。数据集中缺少一些数据,因此我在参数中使用了na.rm=T。但是,在我应用该函数后,Nas仍然返回。请问我该怎么办

tapply(VehicleData$HWY_MPG,list(VehicleData$Type,VehicleData$Drive),mean,na.rm=T)
                4wd    Front     Rear
Car        25.17382 30.68226 24.37903
Minivan    23.26471 24.28902       NA
Pickup     18.82911       NA 21.21270
St.Wagon   26.46635 29.86416 25.61538
SUV        20.60339 26.55390 20.51227
Two_Seater 18.55882 50.26316 24.56571
Van        17.66667       NA 18.38991

tapply最适合使用
na.rm=TRUE
na.rm=T
不起作用

请尝试以下操作。

tapply(VehicleData$HWY_MPG,list(VehicleData$Type,VehicleData$Drive),mean,na.rm=TRUE)

我想这是完全正确的。显然,数据集中没有(例如)
Pickup
Front
的任何组合,因此您会收到一个
NA
值。@Nicola,谢谢!正如你正确地说的那样,这些组合没有任何组合。