向SPSS数据集中的所有变量添加值+值标签

时间:2018-06-25 15:06:00

标签: spss

我想为数据集中的每个变量添加一个值和一个标签。据我了解,VALUE LABELS命令会删除变量中已经存在的值和标签(该命令中未包含),所以我不想这样做。

有什么想法吗?谢谢!

3 个答案:

答案 0 :(得分:1)

如果您想标记变量(例如:v1 v2 v3),则可以使用:

VARIABLE LABELS
 v1 'label for v1'
 v2 'label for v2'
 v3 'label for v3' .

如果您想在与变量关联的值上添加标签,但又不丢失任何现有的值标签,则可以使用:

ADD VALUE LABELS
 v1
  1 'label for v1=1'
  2 'label for v1=2' /
v2
 1 'label for v2=1'
 2 'label for v2=2' /
v3
 1 'label for v3=1'
 2 'label for v3=2' .

如果以前存在任何标签,它们仍将保留(除非在您的ADD VALUES命令中被明确覆盖)。

答案 1 :(得分:0)

一旦为变量标签准备了表,为值标签准备了表,则可以使用它们创建将其放入数据集中的语法。

阅读以下文本,以获取有关变量标签列表外观的示例:

data list list/vr (a10) lb (a50).
begin data
"myvar1" "this is the label for var1"
"myvar2" "this is the label for var2"
"myvar3" "this is the label for var3"
end data.

现在您可以运行以下语法:

string cmd1 (a100).
compute cmd1=concat("variable labels ", rtrim(vr), "  '", rtrim(lb), "'.").
write out = "yourpath\do variable labels.sps" /cmd1.
exe.

这将创建一个名为do variable labels.sps的新语法,其中包含variable labels命令。
现在是值标签-从下面的表格外观示例开始:

data list list/vr (a10) vl (f3) lb (a50).
begin data
"myvar1" 1 "cat"
"myvar1" 2 "dog"
"myvar1" 3 "horse"
"myvar2" 1 "bed"
"myvar2" 2 "table"
"myvar2" 3 "chair"
end data.

表准备好后,请使用以下语法:

string cmd2 (a100).
compute cmd2=concat("add value labels  ", rtrim(vr), "  ", string(vl,f3), "  '", rtrim(lb), "'.").
write out = "yourpath\do value labels.sps" /cmd2.
exe.

现在您可以使用名为do value labels.sps的新语法。

您还可以查看insert命令来从主语法中运行这两种新语法,而无需打开它们。

答案 2 :(得分:0)

@ user45392用户指出,您可以使用ADD VALUE LABELS命令。

要向数据集中的每个变量添加相同的值和标签,您只需在变量列表的位置写入关键字ALL

ADD VALUE LABELS ALL
   N "new label".
  • N代表新的增值。
  • 仅为数字变量添加值。
相关问题