1
我已經從previous question I asked修改下面這段代碼:數據集中導致計算錯誤的大小
Input_Data <- read.csv("http://dl.dropbox.com/u/58164604/Input_Data.csv", row.names=1, stringsAsFactors = FALSE)
TPop<-Input_Data[1]
TPopCount <- TPop[, 1]
TPopSum <- sum(TPopCount)
OACRaw<-Input_Data[,4:ncol(Input_Data)]
OACRawCount <-ncol(OACRaw)
OA_Percentage <- TPopCount/TPopSum * 100
Data_Per_Row <- OACRaw/matrix(rep(TPopCount, each=OACRawCount), ncol=OACRawCount, byrow=T)*100
Data_Index_Row <- Data_Per_Row/OA_Percentage * 100
names(Data_Per_Row) <- names(Data_Index_Row) <- names(OACRaw)
然而,當我嘗試並獲得它爲一個更大的數據集工作(186列和超過18萬行)它給以下錯誤:
Error in FUN(left, right) : non-numeric argument to binary operator
然而,當相同的代碼運行一個較小的數據集(46列和180,00行)能正常工作:
Input_Data <- read.csv("http://dl.dropbox.com/u/58164604/Input_Data.csv", row.names=1, stringsAsFactors = FALSE)
TPop<-Input_Data[1]
TPopCount <- TPop[, 1]
TPopSum <- sum(TPopCount)
OACRaw<-Input_Data[,4:50]
OACRawCount <-ncol(OACRaw)
OA_Percentage <- TPopCount/TPopSum * 100
Data_Per_Row <- OACRaw/matrix(rep(TPopCount, each=OACRawCount), ncol=OACRawCount, byrow=T)*100
Data_Index_Row <- Data_Per_Row/OA_Percentage * 100
names(Data_Per_Row) <- names(Data_Index_Row) <- names(OACRaw)
任何人都可以解釋爲什麼這是,我怎麼能得到這個代碼工作在一個更大的數據集?謝謝
感謝您發現問題所在。不知道我是如何錯過它的。 – Chris