したがって、文字列と数値の 2 つの値を持つデータがあります。
data(string:chararray, number:int)
5つの異なるルールで数えています
1: int は 0 ~ 1 です。
2: int は 1~2 です。
〜
5: int は 4~5 です。
個別に数えることができたので、
zero_to_one = filter avg_user by average_stars >= 0 and average_stars <= 1;
A = GROUP zero_to_one ALL;
zto_count = FOREACH A GENERATE COUNT(zero_to_one);
one_to_two = filter avg_user by average_stars > 1 and average_stars <= 2;
B = GROUP one_to_two ALL;
ott_count = FOREACH B GENERATE COUNT(one_to_two);
two_to_three = filter avg_user by average_stars > 2 and average_stars <= 3;
C = GROUP two_to_three ALL;
ttt_count = FOREACH C GENERATE COUNT( two_to_three);
three_to_four = filter avg_user by average_stars > 3 and average_stars <= 4;
D = GROUP three_to_four ALL;
ttf_count = FOREACH D GENERATE COUNT( three_to_four);
four_to_five = filter avg_user by average_stars > 4 and average_stars <= 5;
E = GROUP four_to_five ALL;
ftf_count = FOREACH E GENERATE COUNT( four_to_five);
したがって、これは実行できますが、これでは 5 つの個別のテーブルしか得られません。
方法があるかどうかを確認したいです (空想的であっても大丈夫です。私は空想的なものが大好きです) T は単一のテーブルで結果を作成できます。
つまり、
zto_count = 1
ott_count = 3
. = 2
. = 3
. = 5
テーブルは {1,3,2,3,5} になります
データを解析し、そのように整理するのは簡単です。
方法はありますか?