Python 将数据从SPSS保存到Excel-自定义工作表名称

Python 将数据从SPSS保存到Excel-自定义工作表名称,python,excel,spss,worksheet,Python,Excel,Spss,Worksheet,将数据集从SPSS导出到Excel时,是否可以控制数据保存到的工作表的名称?“保存转换输出文件”命令不允许此操作。我有安装了Python的SPSS 21(尽管我对Python还是相当陌生…是的。有关详细信息,请参阅IBM网站上的这篇文章 get file="C:\Program Files\IBM\SPSS\Statistics\23\Samples\English\Employee data.sav". SAVE TRANSLATE /TYPE=ODBC /CONNECT='DSN

将数据集从SPSS导出到Excel时,是否可以控制数据保存到的工作表的名称?“保存转换输出文件”命令不允许此操作。我有安装了Python的SPSS 21(尽管我对Python还是相当陌生…

是的。有关详细信息,请参阅IBM网站上的这篇文章

get file="C:\Program Files\IBM\SPSS\Statistics\23\Samples\English\Employee data.sav".

SAVE TRANSLATE 
  /TYPE=ODBC
  /CONNECT='DSN=Excel Files;DBQ=C:\Daten\Temp\EmployeeDataExcelExport.xlsx;'
  /ENCRYPTED
  /MISSING=IGNORE
  /REPLACE
  /TABLE='EmployeeData'.
编辑: IBM网站上的链接中提供的语法不适用于我,但以下语法适用:

save translate
    /connect="dsn=excel files;dbq=C:\Temp\EmployeeDataExcelExport.xls;driverid=790;maxbuffersize=2048;pagetimeout=5;"
    /table="EmployeeData"
    /type=odbc /map /replace.


保存转换依赖于ODBC驱动程序,这意味着您的统计数据和Office位必须与-64位统计数据和32位Office数据相匹配,否则无法工作。否则,您可以使用SAVE TRANSLATE写入Excel文件,然后通过统计中的基本脚本使用VBA automation重命名工作表。SPSS社区网站提供了一个基本模块,该模块将输出表写入Excel文件,该文件可以进行一些工作表重命名,您可以根据自己的目的进行调整

您可以在这里找到该模块

您有什么版本的SPSS?你有什么版本的微软office?我使用的是SPSS 21 64位,office 365。。。32位;现在才意识到这一点。所以是的。。。必须手动完成。好了!正如乔恩指出的,这必须是一场比赛。没有解决办法。但为什么会出现不匹配?如果这种类型的操作(save-translate)很重要并且经常使用,那么您可以/应该只安装32位SPSS。我想,通过ODBC连接,64位的好处可以忽略不计(除非您经常处理非常大的数据集)。过去,我们只有32位Office可用,但我们运行64位操作系统和SPSS时,我也不得不这样做。但ODBC与SPSS的直接连接被认为更为重要。你必须评估你的需求。安装另一个版本的office或SPSS会影响其他事情;我想我可以接受它的现状;不过,我确实测试了你的解决方案,而且效果很好