0
私は、OT、AT、HPの3つの値を持つChararrayとして定義された列(Productという名前)を持っています。私は、新しい列を作成して、整数にこの値を変換したい:そのためにApache PIG - 別の値に基づいて新しい列を作成します。
- OT = 1
- AT = 2
- HP = 3
私はのforeachなステートメントを作成:
をREGISTER '/usr/lib/pig/piggybank.jar';
File = load '/user/cloudera/file.csv'
USING org.apache.pig.piggybank.storage.CSVExcelStorage(',')
as (ID:Long,
Chain:Int,
Dept:Int,
Product_Measure:Chararray,
Price:Double);
Values = FOREACH File Generate
ID,
Chain,
Dept,
((Chararray)Product_Measure=='OT'?'1':(Chararray)Product_Measure=='AT'?'2':(Chararray)Product_Measure=='HP'?'3':'0') as Product_Measure,
(Price<0.1?0:Price) as Price;
Filter_Values = FILTER Values BY Price > 0;
DUMP Filter_Values;
もし私が文字列をintに変換しようとすると問題が発生すると思います。
誰でも手伝ってもらえますか?
ありがとうございます!
こんにちははAnkurに他
chararray
すべて置き換える値に変換したい場合==
第二置く:(私は自分のコードを更新しました – SaCvP