问题描述
471,Brunt,52,273
472,Nog,27,154
473,Morn,35,38
474,Keiko,34,48
475,Ben,446
我想高效地对其进行迭代,以便可以取出多个 一次获取信息,并将其保存在名称或年龄等地方。
**def retrieveData(data):
array1 = []
splitData = data.split(",")
for newData in splitData:
if newData[1] == "will":
array1.append(newData[1])
return array1
lines = sc.textFile("/Users/adityaverma/Documents/sparkCourse/fakefriends.csv")
lines.take()
getNewData = lines.map(retrieveData)
mydata = getNewData.map(lambda x : (x,1)).reduceByKey(lambda x,y:x+y)
results = mydata.collect()
This results shows an error "ile "<ipython-input-96-8b7508e2339e>",line 5,in retrieveData
IndexError: string index out of range**
我的方法是将RDD传递给python函数(def extract(lines):)类似 然后使用if和else将值保存在不同的数组中,然后分配 在这种情况下,这些数组将再次变为RDD,而不必在同一RDD上再次使用过滤器
怎么可能?有没有一种方法可以有效地遍历RDD或数据帧一次 ?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)