Pig Latin的 LOG() 函数用于计算给定表达式的自然对数(基于e)值。

grunt> LOG(expression)

假设在 HDFS 目录 /pig_data/ 中有一个名为 math.txt 的文件。此文件包含整数和浮点值,如下所示。

math.txt

5 
16 
9 
2.5 
5.9 
3.1 

通过使用 math_data 关系将此文件加载到Pig中,如下所示。

grunt> math_data = LOAD 'hdfs://localhost:9000/pig_data/math.txt' USING PigStorage(',')
   as (data:float);

现在使用 LOG() 函数计算math.txt文件内容的对数值,如下所示。

grunt> log_data = foreach math_data generate (data),LOG(data);

上述语句结果将存储在名为 log_data 的关系中。使用Dump运算符验证关系的内容,如下所示。

grunt> Dump log_data;
  
(5.0,1.6094379124341003) 
(16.0,2.772588722239781) 
(9.0,2.1972245773362196) 
(2.5,0.9162907318741551) 
(5.9,1.774952367075645) 
(3.1,1.1314020807274126)