R语言xlsx,txt文件处理:以《书摘》00年-10年资源合集整理为例

偶然间读到一篇文章,分享06年《书摘》的内容,今天来看都不过时,所以起了找下这本老杂志合集的心思。

傅佩荣先生《哲学与人生》选段

"如果有人觉得活着很辛苦,面对自己又感觉无聊乏味,那么他应该多接触自然界。我有个朋友曾经养了九条狗,因为他认为看狗的脸比看人的脸舒服多了------的确,社会上很多人都是以貌取人,或见面先询问身家背景。譬如,我们下雨天走在街上,被一辆疾驶而过的车溅湿了衣服,如果看到那是一辆福特,通常会气愤难平,如果是一辆宾士,可能反而会后退一步,好像自己理屈。这就是群体造成的荒谬,使大家从外在价值来判断行为的是非。自古以来,人间岂有真正的公平?

自然界不会有这个问题,因为自然界的特色就是公平,耶稣说过:"(上天)降雨给义人,也给不义的人。"无论你是好人或坏人,下雨的时候都会淋到,绝对不可能因为你是好人就不会淋湿,坏人就变成落汤鸡。又如,任何人到海边都能听到一样的浪涛声,绝不会因人而异。自然界是公平的,当你觉得在群体和自我两方面面临很大的压力时,不妨和大自然多接触,譬如养宠物、种盆栽,假日到山上、公园走走,甚至街边的路树与小草都有值得观赏的地方。苏东坡说:"凡物皆有可观。苟有可观,皆有可乐,非必怪奇伟丽者也。"即使路边的一株小草、一朵小花,都有美妙迷人之处,并非只有风景名胜才值得造访。"
李强的《如何看待今日中国之富人阶层》。

这篇文章认为,中国人提起富人,总认为"为富即坏",有"无商不奸"的说法,但作者认为:

"分层和差异在社会上是一种普遍的现象......差异也不是绝对的坏事情。因为我们知道如果没有落差,水是不会流动的。一个社会完全拉平了以后,它就缺乏动力。"

这句话讲得实在是太好了!我们担心的,不是社会有贫富差距,而是这种贫富差距被固化。只要阶层不被固化,社会分层绝对是一件好事。近几年,"绝对公平"的极左思想又开始出现,我们应该读一读十几年前的这段话。

首先是在网上搜现成的pdf合集,没有,只现刊可以订阅,但找到了一个官方网站,刚好有00-10年老杂志的合集,多层链接,且文档是以前2G时代的瞎眼论坛模式,阅读不太友好。

打算根据这个网站,先获取文档,然后整理为带目录的txt文档,手机党就很方便。

具体分了这几步:

1、文档资源获取(爬虫步骤跳过啦),为了整理方便,处理成一篇文章一行的形式,序号、标题作为目录名称,时间用于分割文件(00-10年合计2k+篇文章,如果全放到一个txt文档,估计看一点人就废了,所以按年度分了11个文档)

2、接下来就是按上面思路把excel文档转为txt了,我是用R实现的,要点是函数、循环和字符串的拼接

r 复制代码
d1<-read.xlsx('正文.xlsx')
#按年拆
d1$year<-str_sub(d1$文本1,1,4)
d1list<-split(d1,d1$year)

#每年一合集
ab<-function(test){
  tt<-c()
  for (i in 1:nrow(test)) {
    tt[i]<-str_c(
      str_trim(str_c('第',test$篇章[i],'篇:',test$文本[i])),
      test$字段1[i],sep="\n")
  }
  rr<-paste(tt, collapse = '\n\n')
  rr<-str_remove_all(rr,'_x000D_')
  return(rr)
}

for (j in 1:length(d1list)) {
  test<-d1list[[j]]
  book<-ab(test)
  bookname<-str_c('书摘/',names(d1list),'.txt')[j]
  write.table(book,bookname,
              col.names = FALSE,row.names = FALSE,quote = FALSE)
}

3、最后整理如下,手机效果也给大家看下,个别段落可能因为爬虫时间等待问题漏采,但是不影响阅读。需要杂志资源的可以评论或者私信。


相关推荐
XiaoLeisj2 小时前
【JavaEE初阶 — 多线程】单例模式 & 指令重排序问题
java·开发语言·java-ee
励志成为嵌入式工程师3 小时前
c语言简单编程练习9
c语言·开发语言·算法·vim
捕鲸叉3 小时前
创建线程时传递参数给线程
开发语言·c++·算法
A charmer3 小时前
【C++】vector 类深度解析:探索动态数组的奥秘
开发语言·c++·算法
Peter_chq3 小时前
【操作系统】基于环形队列的生产消费模型
linux·c语言·开发语言·c++·后端
记录成长java5 小时前
ServletContext,Cookie,HttpSession的使用
java·开发语言·servlet
前端青山5 小时前
Node.js-增强 API 安全性和性能优化
开发语言·前端·javascript·性能优化·前端框架·node.js
睡觉谁叫~~~5 小时前
一文解秘Rust如何与Java互操作
java·开发语言·后端·rust
音徽编程5 小时前
Rust异步运行时框架tokio保姆级教程
开发语言·网络·rust
观音山保我别报错5 小时前
C语言扫雷小游戏
c语言·开发语言·算法