簡體   English   中英

如何將包含%符號的R代碼發送到IBM dashDB?

[英]How can I send R code containing the % symbol to IBM dashDB?

我正在嘗試根據教程將R腳本發送並執行到IBM dashDB REST端點。

一切正常,但是當我使用以下代碼時

timestamp=as.numeric(strptime(df$TIMESTAMP, \"%Y-%m-%d %H:%M:%S.000000\"));

dashDB REST服務僅返回:

發生內部錯誤。 請檢查網址,然后重試。

使用dashDB服務中的R Web控制台,腳本可以正常運行。 我已將整個腳本附加在此消息的末尾。

有任何想法嗎?

library(ibmdbR)
mycon <- idaConnect("BLUDB", "", "")
idaInit(mycon)

df <- as.data.frame(ida.data.frame('"DASH110683"."TEMPERATURE"')[ ,c('NAME', 'TEMPERATURE', 'TIMESTAMP')])

pattern="%Y-%m-%d %H:%M:%S.000000"

timestamp=as.numeric(strptime(df$TIMESTAMP, pattern))


maxTimestamp=max(timestamp)
cutOffTimestamp=maxTimestamp - 10
idx = which(timestamp>cutOffTimestamp)
workingSubset=df[idx,]

devideIds=unique(workingSubset$NAME)
scores = 1:length(devideIds)
for (i in 1:length(devideIds)) {
    idx = which(workingSubset$NAME==devideIds[i])
    df=workingSubset[idx,]
    values=as.numeric(df$TEMPERATURE)
    #scores[i]=(sqrt((globalMean- mean(values))^2) +sqrt((globalSD- sd(values))^2))/2
    #scores[i]=abs(globalSD- sd(values))
    scores[i]=sd(values)
}

if (max(scores)>1) {
  devideIdOutlier=devideIds[scores==max(scores)]
} else {
  devideIdOutlier=0;
}

羅密歐,本教程中描述的API更像是一個初步的API。 實際上,我們剛剛提供了新的戰略計划,該戰略計划也提供了更多選擇。 現在,您可以通過請求參數傳入R腳本,也可以引用存儲在dashDB中的R腳本(例如,使用內置的RStudio並保存腳本)。

https://developer.ibm.com/clouddataservices/wp-content/themes/projectnext-clouddata/dashDB/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM