我运行SPSS语法来操作数据然后我希望保存数据。这是我现在用来保存SPSS数据的代码:
SAVE TRANSLATE OUTFILE='/filepath/excel_file.xlsx'
/TYPE=XLS
/VERSION=12
/MAP
/REPLACE
/FIELDNAMES
/CELLS=VALUES.
但是,使用这意味着我每次运行此语法时都会创建一个新的excel文件或替换现有文件。有没有什么办法可以在不擦除旧数据的情况下将新数据附加到同一个文件中?最后的文件可以是excel或access。
答案 0 :(得分:1)
答案 1 :(得分:0)
这可以使用ODBC完成:
要首先在Excel文件中创建新工作表,请使用:
SAVE TRANSLATE /TYPE=ODBC
/CONNECT='DSN=Excel Files;DBQ=c:\filepath\excel_file.xlsx;DriverId=1046;MaxBufferSize=2048;PageTimeout=5;'
/ENCRYPTED
/MISSING=IGNORE
/REPLACE
/TABLE='WorksheetName'
/KEEP=var1, var2, var3 .
下次,当您想要附加到同一工作表时,或REPLACE
使用APPEND
:
SAVE TRANSLATE /TYPE=ODBC
/CONNECT='DSN=Excel Files;DBQ=c:\filepath\excel_file.xlsx;DriverId=1046;MaxBufferSize=2048;PageTimeout=5;'
/ENCRYPTED
/MISSING=IGNORE
/APPEND
/TABLE='WorksheetName'
/KEEP=var1, var2, var3.
请注意,其中一些是特定于版本的(SPSS和Excel)。要创建自己的语法使用 文件>出口>出口到数据库 选择EXCEL FILES并单击NEXT,然后按照其余部分进行操作,并粘贴到语法。
<强> ADDITION 强>
我建议您在SPSS文件中累积数据:
prepare your data...
*if the ODBC export works for you, export now using `/append`.
add files /file=* /file="filepath\your previous accumulated data.sav'.
save outfile="filepath\your previous accumulated data.sav'.
*if you have trouble with the ODBC export, you can just save the whole accumulated file to excel.