>source

파워 쿼리 내에서 R 스크립트를 사용하여 일부 데이터 변환을 수행하고 스케일 된 테이블을 반환합니다. 내 R 코드는 다음과 같습니다.

# 'dataset' contém os dados de entrada neste script
library(dplyr)
df_normal <- log(dataset+1) %>%
select(c(2:4)) %>%
scale
df_normal <-cbind(dataset[,c(1)], df_normal)
output <- df_normal

이것은 R Studio에서 정상적으로 작동하며 예상대로 df_normal 데이터 프레임을 얻습니다.

파워 쿼리에서 빈 테이블을 얻습니다!

데이터 프레임을 테이블로 내보내려면 어떻게합니까?

  • 답변 # 1

    이것이 반환되지 않는 것이 이상하게 보입니다. 온라인으로 한 눈에이 3 분짜리 YouTube 동영상을 제공했는데, 사용중인 것과 동일한 방법을 사용합니다. 소스를 추가로 검색하면 Microsoft 문서가 제공 될 수 있으며 이로 인해 문제가 발생할 수있는 이유가 있습니다.

    와이즈 비즈

    이것들은 가장 명백한 이유처럼 보입니다. 데이터 세트에 복잡한 열이 없다는 것이 내기의 이유 일 수 있습니다. 데이터 세트를 빠르게 재현하면

    When preparing and running an R script in Power BI Desktop, there are a few limitations:

      Only data frames are imported, so make sure the data you want to import to Power BI is represented in a data frame

      Columns that are typed as Complex and Vector are not imported, and are replaced with error values in the created table

    가  함수는 데이터 세트를 scale 로 변경합니다  클래스 객체. 이것은 matrix 에 의해 유지됩니다 , 그리고 그러한 출력은 cbind 클래스입니다.   matrix 가 아니라 .

    data.frame
    
    

    간단한 수정은 >dataset <- as.data.frame(abs(matrix(rnorm(1000),ncol=4))) >class(dataset) [1]"data.frame" >library(dplyr) >df_normal <- log(dataset + 1) %>% > select(c(2:4)) %>% > scale >class(df_normal) [1] "matrix" >df_normal <- cbind(dataset[,1], df_normal) >output <- df_normal >class(output) [1] "matrix" 를 추가하는 것 같습니다 이는 powerBI의 문서와 일치하므로 어쩌면 그것은 output <- as.data.frame(output) 가 필요할 것입니다  마지막에 같은 진술. 스크립트 끝에 return 를 나타내는 줄 추가  이 문제를 해결해야합니다.

    편집

    설명을 위해 다음과 같이 수정 된 스크립트가 예상 데이터를 반환해야한다고 생각합니다.

    output
    
    

    # 'dataset' contém os dados de entrada neste script library(dplyr) df_normal <- log(dataset+1) %>% select(c(2:4)) %>% scale df_normal <-cbind(dataset[,c(1)], df_normal) output <- as.data.frame(df_normal) #output ##This line might be needed without the first comment

관련 자료

  • 이전 python - 원소가 존재하지 않으면 셀레늄으로 된 조건문
  • 다음 css - IE 11 또는 Edge에서 스타일 시트가 출혈하거나 누출되는 것을 막는 그림자 DOM을 만든 사람이 있습니까?