0
親愛的
我運行功率BI下述R腳本,以獲得「data2016」和「DF」作爲輸出數據的目的(都是數據幀)。使用sapply()我正在使用函數inputFreq(),這是一個自制函數,用於計算向量中條目的頻率。該功能採用的是()內(除其他事項外,見下文)功率BI找不到功能是()在A R腳本
setwd("C:/Users/Home/Documents/folder")
data2016 <- read.csv("rawData2016.csv", header = TRUE)
sapply(list.files(pattern="[.]r$", full.names=TRUE), FUN=source)
df <- head(as.data.frame(inputFreq(data2016$var1[1:100])))
信息錯誤
做獲取數據後>其它> [R腳本和粘貼(所有電力BI環境),我得到以下錯誤
詳細信息:「ADO.NET,R腳本錯誤在inputFreq 錯誤(data2016 $ VAR1 [1:100]): 找不到的功能。 「是」 電話:頭部 - >如.data.frame - > inputFreq 執行停止
調用的函數inputFreq()裏面有is()函數。對於信息,here's功能:
inputFreq <- function(x){
if(is(x, "factor") == TRUE) {
x <- as.character(x)
} else {
x
}
a <- sort(x)
n <- length(a)
k <- numeric(n)
f <- numeric(n)
# vector k: algoritmo para computar la frecuencia maxima en vector 'a'
k[1] <- 1
for (i in 2:n){
if (a[i]==a[i-1]){
k[i] <- 1 + k[i-1]
} else {
k[i] <- 1
}
}
# vector N: algoritmo para imputar la frecuencia maxima de cada a(i)
f[n] <- k[n]
for (j in (n-1):1){
if (k[j] < k[j+1]){
f[j] <- f[j+1]
} else {
f[j] <- k[j]
}
}
return(cbind("x" = x, "fr.x" = f[match(x,sort(x))]))
}
更多信息
該功能已經在rstudio環境表現良好,問題似乎是,當雙向電力試圖從閱讀的是()函數方法-R。
你試過函數'is.factor()'嗎? –
'is'位於方法包中。也許Power BI不加載它?你可以用'methods :: is' – James
或'library(methods)'來指定命名空間' –