我经常对人类参与者进行研究。由于各种原因,我的初步标识符有时是降低数据匿名性的信息的组合(例如,我可能会连接一个字符串,其中包括完成日期和时间、IP 地址以及参与者提供的一些信息)。
因此,如果要以某种形式共享数据,则需要从初始 ID 创建一个经过清理的 ID。清理后的 ID 需要去除此类信息。R 中的一个简单方法就是分配连续的数字(例如, data.frame 在df$id <- seq(nrow(df))
哪里df
)。但是,如果在研究的初始阶段收集更多数据或重新使用行,这可能会导致问题。即,每次更新原始数据集时,分配给给定参与者的清理后的 ID 可能会有所不同。这反过来可能会破坏对已清理数据集的后续分析,例如,可能已根据已清理 ID 过滤了案例。
因此,我考虑使用packagedigest
中的函数digest
创建哈希。
df$id <- sapply(df$raw_id, digest)
这似乎会导致一种从原始标识符到已清理标识符的可靠方法,但对于仅拥有已清理标识符的任何人来说,获取原始标识符是不可能的。
但是,鉴于我对digest
函数和散列一般都是新手,我想问:
- 是否
digest
适合剥离识别信息的 ID? digest
用于此目的是否有任何问题?