我有一个pyspark数据框,有两列 A
以及 B
. 这些列中的每一列都是字符串数据类型。
下面是Dataframe的示例
|-------|-------|
| A | B |
|-------|-------|
| "a1" | "b1" |
| "a2" | "b2" |
| "a3" | "b3" |
| "a4" | "b4" |
| "a5" | "b5" |
| "a6" | "b6" |
|-------|-------|
我想贴标签 _1
, _2
以及 _3
在随机选择的行中创建两个新列 A1
以及 B1
这样,Dataframe现在如下所示:
|-------|-------|---------|---------|
| A | B | A1 | B1 |
|-------|-------|---------|---------|
| "a1" | "b1" | "a1_1" | "b1_1" |
| "a2" | "b2" | "a2_2" | "b2_2" |
| "a3" | "b3" | "a3_1" | "b3_1" |
| "a4" | "b4" | "a4_3" | "b4_3" |
| "a5" | "b5" | "a5_3" | "b5_3" |
| "a6" | "b6" | "a6_2" | "b6_2" |
|-------|-------|---------|---------|
这里有一些我需要注意的规则
每当给定后缀( _1
, _2
或者 _3
)附加到中行的末尾 A
,相同的后缀将附加到中同一行的末尾 B
也。
后缀特性的次数应该相同(或几乎相同)。在这个例子中,我们有三个后缀( _1
, _2
或者 _3
)每个后缀有两个特征。
附加给定后缀的行是随机选择的。
我想要一个解决方案,这对上述的例子工作。如何使用pyspark实现这一点?在我的实际Dataframe中,我希望看到接近一百万行和大约5个后缀。所以,一个有效的解决方案在这里会非常好。
1条答案
按热度按时间xxe27gdn1#