【发布时间】:2015-01-22 14:24:53
【问题描述】:
我有一个语料库,我需要统计整个语料库中的文档和标记的数量,以及它的子部分。
到目前为止我一直在开发的代码如下所示:
def gather_data(path):
words = 0
articles = 0
for root, dirs, files in os.walk(path):
for f in files:
if not f.endswith('_metadata.txt') and f.endswith('.txt'):
articles += 1
p = os.path.join(root, f)
with open(p) as duo_file:
for line in duo_file.readlines():
words += len(line.split())
write_to_data(words, articles, current_path)
我知道,计数非常粗略,需要进一步发展。但是,我似乎无法弄清楚如何计算总数(整个语料库),并计算语料库的每个辅助部分。所以结构是,整个语料库 -(第 1 部分,第 2 部分,第 3 部分) - 然后每个部分也有子部分,所以我们有第 1 部分 -(第 1 部分,第 2 部分,第 3 部分)。
所以本质上它是一个列表列表:
[Corpus, [Part 1[part 1, part 2]], [Part 3 [...]]...]]
所以我希望计数是(来自上面的示例)
Corpus -> counts
Part 1 -> counts
Part 1.part 1 -> counts
Part 1.part 2 -> counts
有人问零件是什么。它们是文件夹。因此,主文件夹称为语料库,该文件夹由几个文件夹组成,每个文件夹都是语料库的子部分,这些文件夹由更多文件夹或文件组成。它是一个文件夹目录 - 文件夹 - (文件夹或文件)
所以基本上我想计算每个文件夹下的所有文件。所以我想要对根文件夹进行计数,这意味着对所有内容进行计数,然后对根目录下的每个文件夹进行计数,然后对这些文件夹进行计数(如果有更多文件夹)。
我希望它被打印出来:
语料库:x 篇文章,x 个词 自然科学学院:x 篇文章,x 个单词 物理研究所:x 篇,x 词
所以自然科学学院是语料库的一个子语料库,物理研究所是自然科学学院的一个子语料库。希望这能说明问题。
【问题讨论】:
-
第 1、2 和 3 部分是什么?将文件分成几部分的标准是什么?
标签: python path count operating-system