我根据我的标准过滤了一堆行。现在我需要两列的减去值,我需要对它们进行排序。这些是我到目前为止使用的命令。
data = LOAD '/user/imohit01017881/jk/a2dbe50d-c6e5-42e2-8fd0-5386720ce07b_Data.csv' using PigStorage(',') AS (Country:chararray, CountryCode:chararray, Series:chararray, SeriesCode:chararray, yr2000: float, yr2001:float, yr2002 :float, yr2003 :float, yr2004 :float, yr2005:float, yr2006:float, yr2007:float, yr2008 :float, yr2009 :float, yr2010:float, yr2011: float, yr2012 :float, yr2013 : float, yr2014 : float, yr2015:float);
过滤包含req数据的行:
ggdif = FILTER data by Series == 'Improved sanitation facilities (% of population with access)'
dump data
下面的行给了我错误:
sub_data = FOREACH ggdif GENERATE SUBTRACT(yr2015, yr2000);
答案 0 :(得分:0)
Source:SUBTRACT拿两个包作为参数,然后返回一个由第一个包的元组组成的新包,而不是在第二个包中。 如果为null,则行包参数将替换为空行李
sub_data = FOREACH ggdif GENERATE (yr2015 - yr2000);