【发布时间】:2016-07-12 20:31:09
【问题描述】:
我有这个代码:
import time
from datetime import datetime
ts = time.time()
dt = datetime.fromtimestamp(ts).strftime('%Y-%m-%d %H:%M:%S')
claims_data = data.map(lambda x: x.split(","))
claim_id = claims_data.map(lambda x: (
x[9],
'Claim_id',
'0',
'Claim_id',
'Claim',
1,
))
BeginDOS = claims_data.map(lambda x: (
x[13],
'BeginDOS',
'0',
'BeginDOS',
'Claim',
1,
))
我正在尝试从现有 RDD 中转换数据,这就是我正在尝试做的事情:
此代码示例提取单个列。 claim_id 是 x[9],BeginDOS 是当前加载的 RDD 的 x[13],称为 data。使用地图,我正在为每一列使用静态数据创建新的 RDD。随着时间的推移,我将添加更多地图。
我的问题是最后一个字段。在这些情况下,两者都被硬设置为数值 1。
我需要实例化一个变量计数器,并用一个数字预加载该变量。我想在claim_id 和BeginDOS 中使用该数字,但每次都增加它。对于claim_id 中的每条记录,它都会递增,BeginDOS 也是如此
我该怎么做?
谢谢
更新 #1。请求的源数据示例:
1,001,885,2HZL911L0,00,99,,L91279331,001,71,59404,03,MED,2014-05-28,2014-05-28,72885,7840,8460,8470,8471,8472,,920,920,0,0,2014-07-09,C,261435747,U,U6FIL,1,,2014-05-28,2014-05-28,12,0,R0129,845,845,0,U6FIL
谢谢。
【问题讨论】:
-
您能否附上
data的样本? -
我放了一些。非常感谢
标签: python apache-spark lambda pyspark rdd