R中的错误消息使用数据帧

时间:2017-11-03 18:28:23

标签: r dataframe

我创建了一个名为weather.info的数据框,其中月份为行,列为Monthly_AvgDailyMax_AvgDailyMin_Avg等。问题是显示所有行DailyMax_Avg大于50的数据框。这是我输入的内容:

subset(weather.info, DailyMax_Avg > 50)

但我收到的错误是:

   Warning message:
In Ops.factor(DailyMax_Avg, 50) : ‘>’ not meaningful for factors

有人可以帮我解决这个问题吗?我对R来说很新,是第一次使用R语言。谢谢!

2 个答案:

答案 0 :(得分:1)

在使用DailyMax_Avg之前,您需要将subset转换为数字。你可以做到

weather.info$DailyMax_Avg <- as.numeric(levels(weather.info$DailyMax_Avg))[weather.info$DailyMax_Avg]

请注意 建议使用as.numeric(levels(weather.info$DailyMax_Avg))[weather.info$DailyMax_Avg](并且比as.numeric(as.character(weather.info$DailyMax_Avg))更有效)将因子转换为数字。有关详细信息,请参阅?factor(警告部分)

答案 1 :(得分:0)

首先将DailyMax_Avg转换为数字:

weather.info$DailyMax_Avg <- as.numeric(as.character(weather.info$DailyMax_Avg))