Dataframe pyspark为每一行创建一个数据帧。一些列值需要设置为1

Dataframe pyspark为每一行创建一个数据帧。一些列值需要设置为1,dataframe,pyspark,databricks,Dataframe,Pyspark,Databricks,我正在尝试创建pyspark数据帧。我知道所有的列名。对于id为的每一行,只有一组列的值需要为1 例如,如果用户单击某个网站,则表示已知。用户1可能会单击url2和3。用户2单击了url1和3。然后输入数据帧是 id | urlclacked| --+----+ u1 | url2 u1 | url3 u2 | url1 u2 | url3 。。。。 所有其他用户都是如此 然后,我知道输出数据帧将有4列:id、url1、url2、url3等 在第一行(id=u1)中,仅单击[url2,url3

我正在尝试创建pyspark数据帧。我知道所有的列名。对于id为的每一行,只有一组列的值需要为1

例如,如果用户单击某个网站,则表示已知。用户1可能会单击url2和3。用户2单击了url1和3。然后输入数据帧是

id | urlclacked|

--+----+

u1 | url2

u1 | url3

u2 | url1

u2 | url3

。。。。 所有其他用户都是如此

然后,我知道输出数据帧将有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


许多其他行遵循相同的逻辑

请阅读并尝试向我们提供您输入的小样本。您的问题不清楚行ID和输入列表是如何指定的。希望问题现在清楚了。