【问题标题】:SPSS Syntax to import RFC 4180 CSV file with escaped double quotesSPSS Syntax 导入带有转义双引号的 RFC 4180 CSV 文件
【发布时间】:2014-08-05 15:03:15
【问题描述】:

如何将 RFC4180 标准的 CSV 文件读入 SPSS?具体来说,如何处理嵌入了双引号的字符串值(正确地)用第二个双引号转义?

这是一个值有问题的记录实例:

2985909844,,3,3,3,3,3,3,1,2,2,"I recall an ad for ""RackSpace"", but I don't recall if this was here or in another page.",200,1,1,1,0,1,0,Often

我使用的SPSS语法如下:

GET DATA
  /TYPE=TXT
  /FILE="/Users/pieter/Work/Stackoverflow/2013_StackOverflowRecoded.csv"
  /IMPORTCASE=ALL
  /ARRANGEMENT=DELIMITED
  /DELCASE=LINE
  /FIRSTCASE=2
  /DELIMITERS=","
  /QUALIFIER='"'
  /VARIABLES=  ... list of column names...

导入成功,但在遇到此类值后偏离轨道并引发警告。

【问题讨论】:

  • 目前,使用 vi 全局删除嵌入的双引号 :%s/""//g

标签: csv import spss rfc4180


【解决方案1】:

恐怕这是 SPSS 中的一个错误,因此无法解决。

如果您觉得有帮助,您可能想向 IBM 支持团队咨询这个问题并在此处发布他们的答案。

一种解决方法是将 *.csv 文件中的转义双引号更改为其他引号类型。如果您在类似 UNIX 的操作系统上使用高级文本编辑器(如 notepad++ 或“sed”命令行工具),这应该只是很少的工作。

【讨论】:

  • PSPP 中的类似行为,这不是我想要的,但对专有标准的保真度却出人意料。
【解决方案2】:

在当前版本的Statistics(22)中尝试了一个示例,双标识符处理正确,但是,如果您使用文本向导生成语法,则生成的语法中的字段太短,因此您需要增加宽度。

【讨论】:

  • 我在尝试使用 Statistics 22 时收到警告。但我没有很好地检查数据是否受到影响。
  • 粘贴语法并根据需要增加可变宽度
猜你喜欢
  • 2014-04-22
  • 1970-01-01
  • 2013-03-09
  • 1970-01-01
  • 2020-01-18
  • 2016-03-04
  • 2019-03-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多