一百年的孤独:我如何分析我最喜欢的书

好吧,你懂了:我喜欢音乐和电视剧。 您可能不知道我是一个固执的读者。 我无法列出我一生中读过的所有书籍,但我可以回答这个问题,您最喜欢哪本书?

这是加百列·加西亚·马尔克斯(GabrielGarcíaMárquez )的一百年孤独 。 这本书有一百年的寂寞:它包含了您所需要的一切,或者都不包含,它是一部非常出色的小说,它的内容实际上是无限的,它是时间的定义。 而且,它代表了我的孤独。

几天前我在法国发现了一个非常不错的版本。 我再也看不懂了,但好奇心总是杀死猫,所以我想知道是否有可能通过某种文本分析的意义来分析它

我做到了,有这篇文章。 让我们跳到简介!

介绍

我使用两种分析方法对本书进行了分析,即文本分析和某种图论分析 。 前者是通过对书中的文字进行分析而构成的,将单词作为分析的基本要素。 后者使用前者来创建图表(或网络 ),以建模书籍中字符之间的交互。

在开始之前,请先声明:本文不代表对所暴露问题的科学处理。 它只会带来很多好奇心。

数据

开始之前,我们需要一些东西。 是的,您猜得很好:我们需要某种文本格式的书。 我们要求Google回答:这是一个.txt文件,其中包含原始书籍的英文翻译。

文本挖掘是使用Pythonnltk库进行的。 matplotlibTableau进行了可视化。 该图是使用networkx库和Gephi进行可视化制作的。

该方法的主要步骤如下:

  1. 阅读本书并使用python和nltk将其标记化,
  2. 使用相同的工具进行文字分析
  3. 在提取的有关字符的信息的顶部构建一个图形。

该代码在Github上可用。

文本分析

让我们从文本分析开始,那就是获取所有文本,将其吐到计算机上,看看是否有东西出来 。 看来确实出现了一些有趣的事情!

符号,单词,词汇丰富性

一个简单的问题:这本书包含多少个符号,全部和不同的单词? 马尔克斯(Márquez)为这本书的最后草稿按了打字机809644的键。 一百年的寂寞包含144739个单词,不同单词的数量为11027 。 超过11k个不同的单词!

我们可以提取一个很好的量度,称为词汇丰富度 ,它是不同单词数与总单词数之比。 在这种情况下,我们有0.07618540959934779 ,这意味着所有不同的词代表整个文本的7.6%

单词分散

马尔克斯将他的作品命名为“ 百年孤独” 。 它可能会让您认为孤独一词在文本中出现很多。 我们可以通过识别单词在整个文本中的分散性来找到它。 我是好奇者,所以我尝试找出其他四个单词,分别是时间生与死

该图显示了单词在文本中的分散情况。 凭直觉,蓝线表示出现在书中该部分的词,其他情况除外。 从情节中我们可以看到,古老的狐狸Márquez确实很少使用孤独,但是却使读者陷入了时间的概念,实际上在整本书中都使用了这个词。 此外,从布恩迪亚(Burendía)第五代末期到本书结尾,我们都将爱视为主要主题。

哈帕克斯豆豆

嗯…什么? hapax legomena是一个单词,在整个上下文中仅在整个语言的书面记录,作者的作品或单个文本中出现一次。

一百年的寂静包含4741 hapax legomena。 这是随机抽取的其中50个:

肩章,心烦意乱,文明,动机,元帅,领域,嘴,鄙视,秘书,咨询,虎钳,四十七岁,修改,鹦鹉,三十五岁,危害,飞行最高,顺服,希望,拒绝,明智地,沃尔特,仔猪,罐头,美味佳肴,痴呆症,港口,圣杯,减轻的,段落,谜语,小屋,亚历山大,关闭,完善,通奸,马蹄,药房,踢踏舞,织物。

搭配

嗯…什么? 我是计算机科学家,加油! 并置是单词或术语的序列,其出现的频率比偶然期望的要高。

在“ 一百年的孤独”中 ,我们发现以下搭配:

joséarcadio,aureliano segundo,aureliano上校,aurelianobuendía,arcadiobuendía,gerineldomárquez,圣诞老人sofía,pietro crespi,petra cotes; 彼拉特内特拉,杰里内尔多上校,阿尔卡迪奥·塞贡多,阿马兰塔·乌苏拉,板栗树,香蕉公司,毛里西奥巴比龙尼亚,阿波里那尔莫斯科人,父亲尼卡诺尔,普鲁登西奥·阿吉拉尔很多年。

网络分析

好吧,现在我们很开心! 这种分析背后的思想是通过网络 (图表)对“ 一百年孤独”的字符之间的关系进行建模。

在开始之前,我们定义什么是图形以及字符之间的关系是什么。

网络只是一组通过某种关系在它们之间连接的对象。 例如,您,我的亲爱的读者和您的朋友们建立了一个网络:您是由过去的经验,共同的利益等联系在一起的实体。在整篇文章中,我可以将这些实体称为顶点 ,并将关系称为

关于角色之间的关系:我们无法自动提取各种关系。 我们说字符AB之间是否存在关系,即文本中是否出现了AB ,而B从出现A开始最多出现30个单词。 此外,我只考虑了至少具有一种相互作用的角色。

哦,天哪,我们有一个图表!

你在等它! 这是模拟一百年孤独字符关系的图形: