【问题标题】:How to convert .dat + .sps to .sav on command line如何在命令行上将 .dat + .sps 转换为 .sav
【发布时间】:2017-01-02 01:17:20
【问题描述】:

我得到了很多以.dat 文件形式到达的数据集,其中包含用于转换为 SPSS (.sps) 的语法文件。我是R用户,所以需要将.dat文件转换成R可以读取的.sav。

过去,我使用 PSPP 手动执行此操作。 (我买不起 SPSS!)但我更喜欢编程解决方案。

我认为pspp-convert 可以解决问题,但在输入语法文件方面我不明白它是如何工作的:

我的文件是:

  • 数据.dat
  • data.sps(正确指向 data.dat)

我试过了

pspp-convert data.sps data.sav

但是得到

`data.sps' is not a system or portable file. 

有意义,因为输入应该是可移植文件。我是否正在尝试做一些超出此 CLI 范围的事情?

一般来说,必须有某种方法将 SPS 文件应用到 DAT 文件以获取 SAV 文件(或任何其他可移植文件),对吗?

【问题讨论】:

  • SPSS 语法有什么作用? .dat 文件是什么类型的文件? .dat 文件不太可能无法直接导入 R。如果 sps 文件中的代码(数据导入除外)在文件之间没有太大变化,您可以将 spss 语法转换为 R。您还可以看看github.com/lebebr01/SPSStoR
  • 总结:我不确定通过 .sav 文件是最好的方法,但我们需要更多信息才能确定。
  • 根据我的经验,R 的外部库可以很好地读取 .sav 文件。 .sps 文件只是一个将 .dat 文件(没有变量信息的巨大 ASCII 文件)转换为结构化数据文件的程序。但我可以使用 .POR 或其他任何东西。
  • 我认为您可以通过将 pspp 文件传递​​给它来从命令行使用 pspp 而无需交互模式:pspp data.sps
  • 我同意 R 可以很好地读取 sav 文件,但是您计划在 R 上修补第二个工具,因为 R 也可以做得很好。导入 ASCII 文件 R 也做得很好。唯一缺少的是将 SPSS 语法转换为 R 语法。这取决于文件之间 SPSS 语法的变化程度以及语法的复杂程度,是否值得仅使用一种工具来轻松工作。

标签: r format spss dataformat


【解决方案1】:

从 SPSS Statistics 的角度来看,.dat 文件扩展名通常意味着数据采用固定的 ASCII 文本格式。您需要随附的密码本来告诉您要读取哪些变量以及以何种格式读取。 SPSS Statistics 命令语法文件 (.sps) 会为您执行此操作。但这个文件只是用于读取 ASCII 数据的 SPSS Statistics 命令列表。它本身不是数据文件。

您在其他地方将这些文件称为“可移植文件”。 SPSS Statistics 可移植文件 (.por) 是一个非常特殊的 ASCII 文件。结构化以供 SPSS Statistics 读取和写入。在任何情况下,如果您的首选工具采用 SPSS Statistics 可移植文件 (.por),那么这些 *.dat 文件可能不是。

假设这些 *.dat 文件是固定的 ASCII 文本文件,您需要辨别其中的信息是如何存储的,然后使用可能的工具来读取 ASCII 文本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-12-09
    • 2010-12-23
    • 1970-01-01
    • 2017-10-19
    • 2014-01-29
    • 2020-01-13
    • 1970-01-01
    • 2022-11-13
    相关资源
    最近更新 更多