[英]R - Error in colMeans(wind.speed, na.rm = T) : 'x' must be numeric
我正在嘗試導入文本文件數據集的單個列,其中每個文件都是一天的數據。 我想將每天的風速取平均值。 這是我為此編寫的代碼:
daily.wind.speed <- c()
file.names <- dir("C:\\Users\\User Name\\Desktop\\R project\\Sightings Data\\Weather Data", pattern =".txt")
for(i in 1:length(file.names))
{
##import data file into data frame
weather.data <-read.delim(file.names[i])
## extract wind speed column
wind.speed <- weather.data[3]
##Attempt to fix numeric error
##wind.speed.num <- as.numeric(wind.speed)
##Take the column mean of wind speed
daily.avg <- colMeans(wind.speed,na.rm=T)
##Add daily average to list
daily.wind.speed <- c(daily.wind.speed,daily.avg)
##Print for troubleshooting and progress
print(daily.wind.speed)
}
這段代碼似乎可以在我的數據集中的某些文件上運行,但是在代碼的這一部分,其他代碼卻給了我這個錯誤:
> daily.avg <- colMeans(wind.speed,na.rm=T)
Error in colMeans(wind.speed, na.rm = T) : 'x' must be numeric
我也很難將這些值轉換為數字,並且正在尋找將數據轉換為數字的選項,或者可能會以沒有遇到此問題的不同方式獲取均值。
> as.numeric(wind.speed.df)
Error: (list) object cannot be coerced to type 'double'
即使這不是一個可重現的示例,問題仍然是您正在將矩陣函數應用於矢量,因此它將不起作用。 只需將colMeans
更改為mean
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.