SPSS:如何从包含重复 ID 的客户端 ID 变量生成 ID 号
SPSS: How do I generate ID numbers from client ID variable that contains duplicate IDs
我有一个包含数千行的数据集,每个人都分配了一个 ClientID。我想使用 ClientID 变量生成一个从 1 开始的新 ID 变量。一些 ClientID 是重复的,所以我想确保重复的 ClientID 被赋予相同的 ID 号。客户端 ID 是字符串,我的数据必须按时间戳排序。
我的数据如下:
ClientID TimeStamp
15137.45692 15/03/2021
10489.15789 03/02/2021
14143.96745 01/01/2021
15137.45692 15/01/2021
15137.45692 27/02/2021
14143.96745 08/03/2021
我希望它看起来像:
ID ClientID TimeStamp
1 14143.96745 01/01/2021
2 15137.45692 15/01/2021
3 10489.15789 03/02/2021
2 15137.45692 27/02/2021
1 14143.96745 08/03/2021
2 15137.45692 15/03/2021
我该怎么做?
我会在 excel 中执行此操作,但我有超过 25 万行数据并且 excel 一直崩溃。
谢谢
以下语法创建 ID=1,然后仅在新 ClientID 的情况下添加 1:
sort cases by ClientID.
compute ID=1.
if $casenum>1 ID=lag(ID)+(ClientID<>lag(ClientID)).
exe.
编辑:
这是使用 rank
函数的另一种好方法:
RANK VARIABLES=ClientID (A) /RANK /PRINT=NO /TIES=CONDENSE.
我有一个包含数千行的数据集,每个人都分配了一个 ClientID。我想使用 ClientID 变量生成一个从 1 开始的新 ID 变量。一些 ClientID 是重复的,所以我想确保重复的 ClientID 被赋予相同的 ID 号。客户端 ID 是字符串,我的数据必须按时间戳排序。
我的数据如下:
ClientID TimeStamp
15137.45692 15/03/2021
10489.15789 03/02/2021
14143.96745 01/01/2021
15137.45692 15/01/2021
15137.45692 27/02/2021
14143.96745 08/03/2021
我希望它看起来像:
ID ClientID TimeStamp
1 14143.96745 01/01/2021
2 15137.45692 15/01/2021
3 10489.15789 03/02/2021
2 15137.45692 27/02/2021
1 14143.96745 08/03/2021
2 15137.45692 15/03/2021
我该怎么做?
我会在 excel 中执行此操作,但我有超过 25 万行数据并且 excel 一直崩溃。
谢谢
以下语法创建 ID=1,然后仅在新 ClientID 的情况下添加 1:
sort cases by ClientID.
compute ID=1.
if $casenum>1 ID=lag(ID)+(ClientID<>lag(ClientID)).
exe.
编辑:
这是使用 rank
函数的另一种好方法:
RANK VARIABLES=ClientID (A) /RANK /PRINT=NO /TIES=CONDENSE.