我正在尝试创建一个 pyspark 数据框。我知道所有的列名。对于具有 id 的每一行,只有一组列需要具有值 1。
例如,如果用户点击一个网站是已知的。user1 可能点击了 url2 和 3。 user2 点击了 url1 和 3。 那么输入数据框是
id|url点击|
--+----+
u1 |网址2
u1 |网址3
u2 |网址1
u2 |网址3
....这对所有其他用户来说都是如此。
然后,我知道输出数据框将有 4 列:id、url1、url2、url3 等。
- 在第一行 (id = u1),只有 [url2,url3] 被点击。因此 url2 和 url3 列需要设置为 1。
- 在第二行 (id = u2),只有 [col1,col3] 被点击,因此 url1 和 url3 列需要设置为 1。这样一直持续到最后一个用户被考虑在内。
最终结果将是:
id|url1|url2|url3
--+----+----+----
u1 | 0 | 1 | 1
u2 | 1 | 0 | 1
u3 | 1 | 1 | 1
和许多其他行遵循相同的逻辑。