Forum Discussion
Rscript runs fine in Rstudio not in PowerBi
This script below runs fine in Rstudio but gives me ENVSXP error in PowerBi. Could anyone figure out why?
library(anomalize)
library(dplyr)
sub= tidyverse_cran_downloads %>%
time_decompose(count) %>%
anomalize(remainder)
6 Replies
- v-huizhn-msftMicrosoft Employee
Hi np212r,
After research, there are the following thread and article for reference.
Getting Power BI Desktop to see R packages?
R Script error
Running Local R Scripts in Power BI
Best Regards,
Angelia- np212rRegular Visitor
That did not work. Were you able to run the code I had put in my question?
- v-huizhn-msftMicrosoft Employee
Hi np212r,
Did you configurate the R in Power BI desktop?
Best Regards,
Angelia
- CrisSalgadoFrequent Visitor
Hi, np212r
Could you solve this problem?
I'm using dplyr to
datafromAccess<-datafromAccess %>% #(lf)
group_by(Slot, Period) %>% #(lf)
mutate(colDiff= colValue - colValue[OrdemNum==1]but results an error Error: Column `colDiff` must be length 1 (the group size), not 0
and many "warnings" :
Attaching package: 'dplyr'
The following objects are masked from 'package:stats':
filter, lag
The following objects are masked from 'package:base':
intersect, setdiff, setequal, union
The code works perfectly in R Studio, the dplyr version is 0.8.0.1 (that is supposed to be supported by PowerBI) and the package is installed in the same path of others (like RODBC and stringr) that works fine.
Best Regards
Cristiane
- JimT99Helper I
For reasons I am unable to figure out, the dplyr functions cause all kinds of grief in Power BI, especially in the service. I can't believe this issue is not more well reported .
- patricio_lagosRegular Visitor
np212r Hi. I run into the very same problem. Power bi's r script was not working for the time_decompose function.
I found a way around it. I gave up running the script. Instead, I used the "r visual opbject" . In there, I ran pretty much the same code:
df=datasetlibrary(dplyr)library(devtools)library(lubridate)library(zoo)library(tidyquant)library(ggplot2)library(anomalize)df=df[complete.cases(df$HZ),]df=df[complete.cases(df$FECHA),]row.names(df) <- NULLdf=as_tibble(df)df$FECHA=as.Date(df$DATE)plot(df$FECHA,df$y)df1=df %>%ungroup() %>%time_decompose(y) %>%anomalize(remainder) %>%time_recompose()ggplot(df1, aes(x = DATE, y = observed, color = anomaly)) +geom_point(size = 3)as you can see, I did not plot the time series with the plot_anomalies function, but rather used ggplot.
Hope it helps