Postgresql-添加2个随机列

Postgresql-添加2个随机列,postgresql,Postgresql,我有一个大数据集,我想在开始时根据一些预定义的概率将其分为训练、验证和测试集(例如,概率为0.8时,一个元组用于训练,0.1用于验证,0.1用于测试) 我想添加两个布尔列,即训练和验证。两者都依赖于一个随机数。如果现在该随机数小于0.8,则元组用于训练,如果大于0.9,则用于测试。否则,这两列都为false,因此需要验证 下面的查询存在一个问题,即所有元组使用相同的随机ID,这意味着根据训练/验证/测试,所有元组都具有相同的值 update data set test = (s

我有一个大数据集,我想在开始时根据一些预定义的概率将其分为训练、验证和测试集(例如,概率为0.8时,一个元组用于训练,0.1用于验证,0.1用于测试)

我想添加两个布尔列,即训练和验证。两者都依赖于一个随机数。如果现在该随机数小于0.8,则元组用于训练,如果大于0.9,则用于测试。否则,这两列都为false,因此需要验证

下面的查询存在一个问题,即所有元组使用相同的随机ID,这意味着根据训练/验证/测试,所有元组都具有相同的值

update data set 
        test = (sub.rand >= 0.9),
       train = (sub.rand <= 0.8) from (select random() rand) sub;
更新数据集
测试=(次兰德>=0.9),
train=(sub.rand试一下

update data set 
    test = random() >= 0.9,
    train = random() <= 0.8;
更新数据集
测试=随机()>=0.9,
火车=随机的