从1 rdd中选择基于其他rdd的元组

时间:2016-07-09 11:35:56

标签: apache-spark

我有2个rdds如下

rdd1 =[(string),(string),list(string)]
rdd as rdd2 =[(string)] 

这里rdd2是rdd1的list(string)的子集。我必须只从rdd1中选择那些在rdd1列表(字符串)中包含rdd2元素的元组。 获得此结果的方法是什么? e.g。

rdd1 =[(a,x,(p,q,r)), (b,y,(q,s,t)),(c,z,(o,p,q,n,m)]

rdd2= [p,n]

这个结果应该从rdd1中选择第一个和最后一个元组,所以结果

rdd3 = [a,x,(p,q,r)), (c,z,(o,p,q,n,m)]   

1 个答案:

答案 0 :(得分:0)

试试这个:

private int total;

b1.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub

        String added = "";
        int a = 0;
        int b = 0;
        int c = 0;
        int d = 0;

        if (cb1.isChecked()) {

            a = 400;

        }
        if (cb2.isChecked()) {

            b = 500;
        }
        if (cb3.isChecked()) {

            c = 300;
        }
        if (cb4.isChecked()) {

            d = 200;
        } 

        total = a + b + c + d; // or total += a + b + c + d;
    }
}

很贵,所以要小心。