大概在10年前后,镇上给村里弄了个农村书屋,其他办公室都没地方,就把书连书柜都放我办公室里了。当时统计了下,一共有1500多本书,后来又给了一批,最终达到1800多本。这些书中的大部分质量和内容都很一般,但还是有几本好书的。反正工作也挺闲的,每天就靠看书打发点时间。时过境迁,工作已经换了几个,但看书的习惯还一直保持着。

我从12年开始记日记,所以从那一年起,哪段时间看了哪本书都有记录。前几年把读书的记录整理过一次,但信息不全;今年过年前后,花了几天的时间又整理了一遍,添加了一些书籍相关的信息,就想着要不要也分析下(其实只是统计,并没有分析),算是对这些年自己读书的一个总结。有点遗憾的是,11年的记录只找到10月份到12月份的一部分,10月份以前的则完全没有记录,就没法统计进来了。

但在分析之前,还得说明一下,有些书我没有进行统计,这些书包括以下四种:

  1. 国产教材。比如为考研而看的《普通心理学》《心理学导论》之类的,但国外的教材,如《心理学与生活》等,不在此列。

  2. 技术类的书。如跟R相关的书,有实体的,也有在线的,都没有被统计进来。

  3. 电子书。不论是在手机上,kindle上,还是在更早的汉王上看的电子书,都没有统计进来。在看书这方面,我还是比较传统的,现在基本上只看实体书。

  4. 太low的书。如,有套书名叫《卑鄙的圣人:曹操》,老爹看见了,非要买一套,当时只出了5本,就都买了下来。我是家里有的书就要看完的(大概就是看完这套书后改了这个“毛病”),就硬着头皮把这几本书看了一遍。听说这套书让作者赚了一百多万的版税,但这也无法掩盖作者文笔一般、词汇匮乏的事实。印象最深的是,曹操笑起来是“噗嗤”,袁绍笑起来也“噗嗤”,连曹操的老子曹嵩笑起来也“噗嗤”,这到底是一群大老爷们,还是一群小丫头片子啊(当然,用在曹嵩身上也许是合适的)?总之,这类书就不进行统计了。

去掉以上四类书之后,剩下的书(共计465本次),就是要进行分析的了。

首先还是载入分析需要用到的包:

library(tidyverse)
library(readxl)
library(knitr)

然后把数据导入并进行清洗。由于数据已经在excel里整理好了,所以也没啥好清洗的,只是对每本书的字数进行了校正:

book <- read_xlsx('读书记录.xlsx') %>% 
  select(year = 2, name = 4, publisher = 6, author = 7, 
         country = 8, dynasty = 9, classification = 10, language = 11, 
         price = 12, page = 13, words = 14, manner = 15) %>% 
  mutate(words = case_when(language %in% c('古汉', '英汉') ~ words*1.3,
                           language %in% c('古语', '英语') ~ words*2,
                           TRUE ~ words),
         words = ifelse(manner == '书内', words*.8, words*.6),
         words = round(words, 0), 
         price = as.numeric(price) %>% round(1)) %>% 
  select(-manner)

清洗后的数据是这样的,随机显示了10本(这里本来想用DT包来生成全部内容的,但我用的blogdown主题似乎并不支持):

set.seed(20190216)
book %>% sample_n(10) %>% 
  arrange(year) %>% kable()
year name publisher author country dynasty classification language price page words
2012 爱弥儿(下) 中华书局 卢梭 法国 / 教育 汉语 24.0 440 199056
2012 教育漫话 教育科学出版社 洛克 英国 / 教育 汉语 15.0 193 120000
2012 徐志摩散文精选 长江文艺出版社 徐志摩 中国 现代 文学 汉语 22.0 301 121363
2012 小城三月 长江文艺出版社 萧红 中国 现代 小说 汉语 17.0 268 108058
2014 心理学与生活 人民邮电出版社 格里格/津巴多 美国 / 心理学 汉语 88.0 621 1012800
2014 谈美书简 中华书局 朱光潜 中国 现代 艺术 汉语 13.0 136 72000
2015 现代心理学史 中国轻工业出版社 杜安·P·舒尔茨/悉妮·埃伦·舒尔茨 美国 / 心理学 汉语 75.0 513 334400
2016 卡夫卡小说全集 Ⅲ 人民文学出版社 卡夫卡 奥匈帝国 / 小说 汉语 29.3 326 240210
2016 庄子今注今译(下) 中华书局 陈鼓应 中国 当代 哲学 古汉 32.0 335 187017
2017 八十天环游地球 安徽教育出版社 儒勒·凡尔纳 法国 / 小说 汉语 22.0 259 168000

下面依次进行分析:

年份

book %>% group_by(year) %>% 
  count(sort = TRUE) %>% 
  kable()
year n
2014 87
2012 82
2016 78
2013 76
2015 56
2017 47
2018 18
2011 15
2019 6

可以看到,看书最多的年份是2014年,其次是12年和16年。14年我正在准备考研,这一年大概是我一生中最充实的一年了,算上考研教材的话,那年我应该看了120本书。除去11年和19年,看书最少的是去年。去年上半年在忙着毕业和找工作,而下半年则在忙着适应工作,没能空出太多的时间看书,不过以后应该不会了。

再算个平均数,这里把11年和19年排除在外:

book %>% filter(!year %in% c(2011, 2019)) %>% 
  summarise(mean = nrow(.)/n_distinct(year)) %>% 
  kable()
mean
63.42857

平均起来,我每年能看63本书,也就是说,我基本上能保证每月5本书。

出版社

book %>% group_by(publisher) %>% 
  count(sort = TRUE) %>% 
  filter(n > 10) %>% 
  kable()
publisher n
中华书局 101
人民文学出版社 68
商务印书馆 41
人民邮电出版社 26
译林出版社 23
天津古籍出版社 16
中央编译出版社 15
安徽教育出版社 11
上海译文出版社 11

前五个出版社的书占了大概一半,我尤其喜欢中华书局的书啊!

作者

book %>% group_by(author) %>% 
  count(sort = TRUE) %>% 
  filter(n > 4) %>% 
  kable()
author n
司马迁 22
鲁迅 17
陈鼓应 13
儒勒·凡尔纳 13
莎士比亚 11
蒙台梭利 9
柏拉图 8
不详 8
李伯钦/李肇祥 8
George R.R.Martin 7
J.K.Rowling 7
卢梭 6
蒙田 6
亚里士多德 6
王弼 5

太史公最多,因为看过两个版本的《史记》,一个是文白对照的版本,九大本,看了两遍,另一个是文言版本,四大本,看了一遍,然而内容实在太多,大部分看过就忘了。鲁迅第二,因为看了一遍《鲁迅全集》,希望以后能有时间,打乱卷次的顺序,从日记、书信和作品三个方面按着时间的推进再看一遍。后面是陈鼓应和凡尔纳,陈鼓应和《老子注译及评介》和《庄子今注今译》是我最喜欢的几本书,而凡尔纳的小说全集,也粗略地看过一遍。

国别

book %>% group_by(country) %>% 
  count(sort = TRUE) %>% 
  filter(n > 4) %>% 
  kable()
country n
中国 158
美国 85
英国 65
法国 48
古希腊 19
意大利 19
德国 17
日本 9
古罗马 8
奥地利 5
西班牙 5

自然是中国的最多,不过跟英语国家加起来进行对比的话,也没有多多少。

朝代

book %>% group_by(dynasty) %>% 
  count(sort = TRUE) %>% 
  filter(dynasty != '/', n > 2) %>% 
  kable()
dynasty n
当代 46
现代 44
汉朝 23
先秦 22
魏朝 5
明朝 4
清朝 4
宋朝 4
唐朝 3

画出来折线图的话,会是U形的。2000年前和最近100年的,看的比较多,以后似乎也应该多看看两个时间段之间的。

分类

book %>% group_by(classification) %>% 
  count(sort = TRUE) %>% 
  filter(n > 4) %>% 
  kable()
classification n
小说 123
哲学 96
文学 91
历史 55
心理学 49
教育 24
社会科学 6
方法论 5
自然科学 5

我看的书主要集中在文史哲三大类上,其中小说数量最多,就把它从文学中拿了出来,自成一类。另外,因为我没有记录国产的心理学教材,所以心理学书籍的数量相对较少,实际上应该是比历史类的书多的。

语言

book %>% group_by(language) %>% 
  count(sort = TRUE) %>% 
  kable()
language n
汉语 350
古汉 55
英语 28
古语 21
英汉 11

古语是指纯文言的,古汉是指文白参照的,英语和英汉的也是这样,不过看的最多的自然还是现代汉语的。另外,在对字数进行统计时,我根据语言进行了校正,具体就是古汉和英汉的在原有字数基础上乘以1.3,而古语和英语的在原有字数基础上乘以2。

价格

book %>% mutate(price = as.numeric(price)) %>% 
  summarise(total = sum(price), avg = mean(price)) %>% 
  kable()
total avg
16601 35.70108

这些书的总价格大概是一万六千多,平均起来,每本35块7,但除了很少的几本书是在新华书店按原价买的,其余的书基本上都是打折的,而且折扣也都很大,所以实际上,这些年我也就看了一万块钱左右的书。

book %>% mutate(price = as.numeric(price)) %>% 
  group_by(year) %>% 
  summarise(total = sum(price)) %>% 
  kable()
year total
2011 364.8
2012 1933.9
2013 1932.1
2014 3586.8
2015 2816.3
2016 3221.3
2017 1636.2
2018 942.6
2019 167.0

按年份平均一下,14年最多,看了3000多块钱的书。不得不说,看书真是一个极其便宜的消遣。

页数

book %>% mutate(page = as.numeric(page)) %>% 
  summarise(total = sum(page), avg = mean(page)) %>% 
  kable()
total avg
185511 398.9484

这些书一共十八万多页,平均每本数400页左右。

book %>% mutate(page = as.numeric(page)) %>% 
  group_by(year) %>% 
  summarise(total = sum(page)) %>% 
  kable()
year total
2011 5059
2012 26909
2013 25012
2014 38407
2015 27053
2016 35503
2017 17242
2018 8144
2019 2182

看的页数最多的一年也是14年,看了快四万页,平均起来,每天都要看100多页。

字数

book %>% mutate(words = as.numeric(words)) %>% 
  summarise(total = sum(words), avg = mean(words)) %>% 
  kable()
total avg
136291256 293099.5

字数是比较难统计的,所以进行了一些校正。除了前面提到的,我还进行了另外一步校正。如果书内标明了字数,那我就按书内的字数进行第一步校正,然后再乘以0.8;如果书内没有标明字数,我就随机找一页,算一算这一页大概有多少字,然后乘以总页数,这时得出的字数进行第一步校正,最后再乘以0.6。经过这样的校正之后,我这些年一共看了一亿三千六百万字的书,平均起来,每本书大概有三十万字。之前在Medium上看了一篇文章,作者讲怎样才能在一年之内看完200书,然后她把书定义为五万字。如果一本书只有五万字的话,那一年看200本真的没啥难的。我觉得还是把一本书定义为三十万字,可能更合适一点。

book %>% mutate(words = as.numeric(words)) %>% 
  group_by(year) %>% 
  summarise(total = sum(words)) %>% 
  kable()
year total
2011 2531263
2012 16750566
2013 15884629
2014 28676764
2015 23470332
2016 30016723
2017 11393177
2018 5929402
2019 1638400

按年份来看字数,最多的倒不是14年,而是16年了,可能那一年看了更多的大部头。

book %>% mutate(words = as.numeric(words)) %>% 
  group_by(language) %>% 
  summarise(total = sum(words)) %>% 
  kable()
language total
古汉 20965668
古语 11856219
汉语 82277559
英汉 2162988
英语 19028822

最后再按语言分类看一下,看得最多的自然是现代汉语的,但纯文言文和纯英文的书,我也看了及几百万字甚至上千万字(这里在把2除回去)。

我其实是reading for reading’s sake的,并没指望通过读书得到其他什么东西。给自己定一个量化的目标,而后每天按着计划执行一点,总不至于让自己陷入无所事事的境地。几年前,我给自己定的这个数量是3000,目前看来,虽然有难度,但也不是不可能完成的任务,所以,继续一页一页的看吧。