2024-04-20 11:16:31 发布
网友
我有一个制表符分隔的文件,其中包含有关客户资料的信息。我需要访问不同的列来做一些数据审计报告,如范围值,分组依据等。我想用Python编写我的MapReduce程序。我需要读取输入文件并计算列统计信息,如count、max、min等。例如,在以下情况下,我需要找到col2的最大值:
col1 col2 col3 col4 A A1 2 4 5 B B1 3 5 8 C C1 4 5 8
另外请注意,我是Hadoop的新手,正在尝试学习如何用Python编写程序。在
我将简化您的数据,以达到Hadoop处理的核心。假设您有以下列式数据:
2 4 5 3 5 8 4 5 8 1 4 5 5 5 8 0 5 8
分散在ndata*.csv文件中,您需要得到每列的总和。当然,在现实世界中,您将拥有更多的行和/或列。我们将使用Pydoop Script来解决问题(是的,我是开发团队的成员)。将以下代码保存到名为colsum.py的文件中:
data*.csv
colsum.py
将数据保存到HDFS并运行应用程序:
$ hadoop fs -mkdir input $ hadoop fs -put data*.csv input $ pydoop script colsum.py input output
您的输出应该如下所示:
$ hadoop fs -cat output/part* 2 42 0 15 1 28
第一列存储原始列索引,而第二列存储和。您可以使用它来轻松地重建最终的和向量,或者让它保持原样以便进一步处理。在
我将简化您的数据,以达到Hadoop处理的核心。假设您有以下列式数据:
分散在n
^{pr2}$data*.csv
文件中,您需要得到每列的总和。当然,在现实世界中,您将拥有更多的行和/或列。我们将使用Pydoop Script来解决问题(是的,我是开发团队的成员)。将以下代码保存到名为colsum.py
的文件中:将数据保存到HDFS并运行应用程序:
您的输出应该如下所示:
第一列存储原始列索引,而第二列存储和。您可以使用它来轻松地重建最终的和向量,或者让它保持原样以便进一步处理。在
相关问题 更多 >
编程相关推荐