2
ここでは、区切り文字としてスペースを含む4列の入力データを示します。私はApache Sparkで複数の列を追加する方法
今[('sachin', 200, 10), ('sachin', 900, 20), ('sachin', 500, 30), ('Raju', 400, 40
), ('Mike', 100, 50), ('Raju', 50, 60)]
として結果を得た私のコードはここからミッドウェイ
from pyspark import SparkContext
sc = SparkContext()
def getLineInfo(lines):
spLine = lines.split(' ')
name = str(spLine[0])
cash = int(spLine[1])
cash2 = int(spLine[2])
cash3 = int(spLine[3])
return (name,cash,cash2)
myFile = sc.textFile("D:\PYSK\cash.txt")
rdd = myFile.map(getLineInfo)
print rdd.collect()
である第二と第三の列を追加し、
sachin 200 10 2
sachin 900 20 2
sachin 500 30 3
Raju 400 40 4
Mike 100 50 5
Raju 50 60 6
結果を印刷したいです必要な最終結果は次のとおりです。第2列と第3列を追加し、残りのフィールドを表示します。
それは働いた。ありがとう。もう1つの質問 - RDDにデータがあると、特定のデータに対して何らかの操作を行うことができますか? 例:RDD [( 'sachin'、200、10)、( 'Raju'、900、20)]です。どのように3番目の列だけを取り出すか、私は10と20を意味します –
@SachinSukumaranそれがうまくいくなら答えを受け入れるべきです。 –
@ rakesh.rakshitはい。 (私が謝ってくれなかったことのいくつかは謝ります) –