私は、変数に値がある-ID
などを1
し、10個の値のリストは言います
LIST1 = [1,2,3,4,5,6,7,8,9,10]
。
ここで、以下のようにpysparkデータフレームを作成したいと思いました。
ID LIST
1 1
1 2
1 3
1 4
1 5
1 6
1 7
1 8
1 9
1 10
注:List1の長さは動的であり、その長さに基づいて、それに応じて行を設定する必要があります。
IDが一定であるか、ID 2のList2があり、両方を1つのDataFrameに結合するかによって異なります。
定数に関する限り、2つのオプションがあります。
ID = 1
LIST1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
source = list(map(lambda x: (ID, x), LIST1))
# source: [(1, 1), (1, 2), (1, 3), (1, 4), (1, 5), (1, 6), (1, 7), (1, 8), (1, 9), (1, 10)]
df = spark.createDataFrame(source, ['ID', 'LIST'])
df.show()
# +---+----+
# | ID|LIST|
# +---+----+
# | 1| 1|
# | 1| 2|
# | 1| 3|
# | 1| 4|
# | 1| 5|
# | 1| 6|
# | 1| 7|
# | 1| 8|
# | 1| 9|
# | 1| 10|
# +---+----+
または
from pyspark.sql.functions import lit
ID = 1
LIST1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
source = list(map(lambda x: (x,), LIST1))
# createDataFrame needs iter of iters -> list/tuple of lists/tuples
df = spark.createDataFrame(source, ['LIST'])
df.withColumn('ID', lit(ID)).show()
+----+---+
|LIST| ID|
+----+---+
| 1| 1|
| 2| 1|
| 3| 1|
| 4| 1|
| 5| 1|
| 6| 1|
| 7| 1|
| 8| 1|
| 9| 1|
| 10| 1|
+----+---+
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加