Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
reffr
New Member

Import SPSS file into Power BI

Has anyone been able to easily import an SPSS .SAV file into Power BI?  Any help would be greatly appreciated.  I am a Power BI newbie so please don't judge!

 

Thanks in advance for your help.

Rob

 

9 REPLIES 9
mbamber
Frequent Visitor

Open the .sav file in Tableau Public and export the dataset as .csv

Anonymous
Not applicable

Use the IBM ODBC. Usuallyit is provided with SPSS install software or from the IBM Passport site (where one downloads IBM entitled software from). For reference you may visit

https://www-01.ibm.com/support/docview.wss?uid=swg21609910

 

Also there is copy of the IBM manual for an older version of this ODBC driver that you can get here

https://www.academia.edu/28578792/IBM_SPSS_Statistics_Data_File_Driver_Guide

 

Hope it helps

micahwilliams12
Frequent Visitor

 With Power BI Desktop, you can connect to data from many different sources. A full list of available data sources is at the bottom of this page.

 

May be this link gives you the solution about importing spss file: https://docs.microsoft.com/en-us/power-bi/desktop-data-sources

Barendnu
Advocate III
Advocate III

Actually, via R, there is a possibility to at least load SPSS data. Unfortunately, variable labels seem to be lost, so I support this idea to improve Power Bi with a dataconnector for SPSS files, but this is a way to get data from SPSS to Power BI:

 

# 1. Install R https://mran.microsoft.com/open/

# 2. Install Microsoft R Client https://msdn.microsoft.com/en-us/microsoft-r/r-client-get-started
# 3. Now go to PowerBI, go to Get data > More > Other > R script and copy/paste this R script:

 

spssFile <- file.path("d:\\yourpath\\yourfile.sav");
tempFile <- "c:\\temp\\temp.xdf";
tempData <- rxImport(inData = spssFile, outFile = tempFile, overwrite=TRUE);
spssData <- rxFactors(inData=tempData, sortLevels=TRUE,factorInfo=c("weegvar"));

 

# In the first line, be sure to enter the path to your SPSS file and use double slashes (\\)
# In the last line, enter a variable in your dataset to sort on
# Reference and more info: https://msdn.microsoft.com/en-us/microsoft-r/scaler-user-guide-data-import

 

Thanks A million. 

It works with me, but is there ability to change data from values to numbers?

 

I can confirm this works for a Survey Monkey Result set! Thank you so much for this. A few things to keep in mind:

Make sure you're on the latest R Client to also have access to rxImport. I had to upgrade mine. 

The last line assumes you have a column named weegvar. I suggest relaciing that with StartDate or RespondentId.

The questions don't have labels. so you will need to go back to your survey to figure out what q0011 really was about. 

 

If you want to read multiple Survey Files in one hit it gets a bit more complicated. You need to use lapply to run rxImport mutlitple times. the issue is that you don't load the full dataset directly into memory but instead into an xdf file. Reloading the xdf file once you're done is all it then takes to use the data in Power BI.

Here is my version of the script to handle multiple surveys

 

#delete the xdf file so we don't duplicate data on each refresh. 

tempFile <- "c:\\temp\\temp.xdf";
if (file.exists(tempFile))
{
file.remove(tempFile)
}

mySourceFiles <- list.files("d:\\yourpath", pattern = "*.sav", full.names=TRUE)

lapply(mySourceFiles, FUN = function(sav_file) {
rxImport(inData = sav_file, outFile=tempFile, append = file.exists(tempFile)) } )

ds<- rxImport(inData = tempFile)

Anonymous
Not applicable

has anyone overcome the issue where variable labels are not being imported into Power BI?  I run the same script in R and variable labels come across  but not in Power BI.  The code I'm using is:

 

library(foreign)
dataset = read.spss("C:\\SPSS data files\\telephone2018.sav",use.value.labels =TRUE, to.data.frame =TRUE, full.names = TRUE )

 

Am I missing anything?

 

 

 

Any help much appreciated.

 

Thanks

 

Jo

I've used the Haven package as described https://rstudio-pubs-static.s3.amazonaws.com/466787_84982191b86e4591bfcee776e498a6d4.html

 

Worked perfectly.

 

 

James

ankitpatira
Community Champion
Community Champion

@reffr power bi desktop has number of in-built file connector that you can use but SPSS isn't one of it. therefore if you're able to convert spss file into any of these format then you can import. also of you are able to find odbc driver that can access spss file then in power bi desktop you can use odbc connector to access that file.

 

Capture.JPG

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors
Top Kudoed Authors