发表于2024-11-13
计算传播领域尤其是新媒体数据挖掘方向一直缺乏系统的教材,《新媒体数据挖掘——基于R语言》旨在为计算传播和计算社会科学领域的读者提供学习R编程语言和开发平台的捷径,希望能够填补这方面的空白。“让学习层次变得更宏观,让学习过程变得更轻松,让学习所获变得更通用”是《新媒体数据挖掘——基于R语言》的编写理念与特色。《新媒体数据挖掘——基于R语言》首先剖析了社会科学研究范式的革新,介绍了R语言的作用和特点;然后系统讲解了编程语言的通用学习方法和R语言的基本组成;最后展开实战应用,包括网络数据采集、文本挖掘和情感分析、社会网络分析、社交编程平台协作等非常有趣且有意义的内容。
《新媒体数据挖掘——基于R语言》适合作为计算传播和计算社会科学领域相关专业本科和研究生教材。高职高专学校也可以选用部分内容开展教学。《新媒体数据挖掘——基于R语言》还适合作为计算传播学和计算社会科学科研人员的自学书籍。
作者简介
王小峰,深圳大学传播学院网络新媒体系教师,计算机博士(武汉理工大学)、公共管理博士后(武汉大学),网页设计师、Redhat工程师。长期致力于计算机编程语言的教学与实践,精通C/C++、Java、PHP、JavaScript、Python、R、Go等十余种编程语言。研究方向主要有机器学习(自然语言处理)、数学文化传播、区块链应用系统开发等。编写《高级语言程序设计(C语言版)》《深度学习(人工智能)》《PHP动态网页设计与网站架设》等教材七部,发表国内外核心论文十余篇。近三年来主持中国博士后科学基金项目“深圳市区级卫生信息平台的集约化建设与第三方监管模式研究”(编号:2016M602370)、深圳市教育科学“十三五”规划重点项目“基于全栈开源的创客课题体系的规划与实施研究”(编号:zdfz16003)、科技创新课题“基于区块链技术的电子文件保护研究”“基于联盟区块链网络的电子病历防篡改研究”等项目和课题。
第1章 为什么学习R语言 1
1.1 R是什么 2
1.1.1 R是一款优秀的现代科研软件 2
1.1.2 R的优势与不足 3
1.1.3 R和Python的区别 3
1.2 计算社会科学的兴起——以计算传播学为例 4
1.2.1 什么是计算社会科学 4
1.2.2 计算传播学的起源和概念 7
1.3 R在计算传播学中的典型应用 9
1.3.1 用R进行文本分析初探 9
1.3.2 互联网在线数据收集 10
1.3.3 社会网络分析 12
1.4 总结与提高 13
1.5 习题 14
第2章 R语言开发环境 15
2.1 R的获取、安装和基本使用 16
2.1.1 RGui的下载与安装 16
2.1.2 RGui的使用介绍 19
2.1.3 示例:使用R Commander实现统计功能 21
2.1.4 R的内置数据集和扩展功能包 26
2.1.5 R的帮助系统 27
2.1.6 R的工作空间和工作目录 27
2.2 R的IDE开发环境——RStudio 27
2.2.1 RStudio的下载和安装 28
2.2.2 RStudio的最简标准操作 28
2.2.3 RStudio的工作界面 31
2.2.4 RStudio的用户自定义配置 32
2.3 示例:我的第一个R项目“网页爬虫” 32
2.3.1 组织项目需求 33
2.3.2 新建项目环境 33
2.3.3 编写应用程序代码并运行 34
2.3.4 执行代码并根据实际结果修改和再次运行 35
2.4 总结与提高 37
2.5 习题 38
第3章 R语言基础——数据 39
3.1 无障碍学习编程语言的两个诀窍 40
3.1.1 从“哲学”的角度了解编程语言 40
3.1.2 从“语言学”的角度学习编程语言语法 41
3.2 R的基本数据类型(数值、字符、逻辑) 42
3.2.1 基本数据类型 42
3.2.2 数据类型的两个属性:模式和长度 43
3.2.3 两个特殊常量 44
3.3 R的复合数据类型 45
3.3.1 向量 46
3.3.2 矩阵 46
3.3.3 数组 47
3.3.4 数据框 48
3.3.5 列表 49
3.3.6 因子 51
3.3.7 时间序列 52
3.4 数据的导入和导出 54
3.4.1 数据的导入 55
3.4.2 数据的导出 59
3.5 总结与提高 59
3.6 习题 59
第4章 R语言基础——代码 61
4.1 R代码的基本单位:语句=数据+运算符; 62
4.1.1 基本运算符 62
4.1.2 表达式、语句、语句块 65
4.2 R的流程控制 66
4.2.1 顺序结构 66
4.2.2 选择/分支结构 67
4.2.3 循环结构 70
4.3 R代码复用——函数和过程 73
4.3.1 “模块化”编程思想与函数 73
4.3.2 函数的定义与调用 75
4.3.3 过程的定义与调用 76
4.4 总结与提高 77
4.5 习题 77
第5章 R绘图——数据可视化呈现 79
5.1 概述 80
5.2 R的绘图函数 81
5.2.1 图形窗口绘图操作函数(图形的创建和保存) 82
5.2.2 R图形参数 83
5.2.3 高级绘图函数 86
5.2.4 低级绘图函数 89
5.3 常用的R可视化功能包 91
5.3.1 ggplot2功能包 91
5.3.2 rCharts功能包 93
5.3.3 plotly功能包 95
5.3.4 map功能包 96
5.4 总结与提高 97
5.5 习题 98
第6章 网络数据程序化采集 99
6.1 网络数据的获取途径及相关基础知识 100
6.1.1 Web数据的获取途径 100
6.1.2 Web的结构与原理 101
6.2 使用R收集Web数据 106
6.2.1 获取静态Web内容 107
6.2.2 网络数据的应用级API采集(以豆瓣为例) 109
6.2.3 获取动态Web内容 111
6.3 总结与提高 114
6.4 习题 114
第7章 文本挖掘和情感分析 115
7.1 R环境下的文本挖掘 116
7.1.1 中文分词 117
7.1.2 分词包jiebaR的使用 118
7.1.3 词云包wordcloud2的使用 127
7.2 情感分析 129
7.2.1 情感分析概述 129
7.2.2 情感分析的简单实现 131
7.3 总结与提高 133
7.4 习题 133
第8章 社会网络分析 135
8.1 网络社会与社会网络分析 136
8.1.1 社会的构成 136
8.1.2 网络社会与社会网络分析 137
8.1.3 现代网络社会与社会网络分析 140
8.1.4 网络与关系的描述 142
8.2 社会网络分析的发展、意义和步骤 143
8.2.1 社会网络分析的三个方向 143
8.2.2 社会网络分析的几个主要步骤 144
8.2.3 社会网络分析的几个重要指标 144
8.3 社会网络分析的常用工具 146
8.3.1 NodeXL的使用 146
8.3.2 R的iGraph功能包 147
8.3.3 UCINET 149
8.4 总结与提高 149
8.5 习题 150
第9章 社交编程平台:GitHub 151
9.1 自己架设PHP实验站点并深入探索RCurl功能包 152
9.1.1 基于PHP网页服务器端技术架设网站实验环境 152
9.1.2 深入探索RCurl包 157
9.2 挖掘和分析社交编程平台GitHub的信息 162
9.2.1 GitHub的基本使用 162
9.2.2 探索GitHub API 165
9.3 总结与提高 175
9.4 习题 175
附录 177
附录1 计算社会科学宣言 177
附录2 计算传播学:宣言与版图 182
附录3 服务器版RStudio的安装与配置(基于Ubuntu14.04) 191
附录4 RStudio的常用快捷键 192
附录5 使用devtools包从GitHub中安装R包 196
附录6 使用Rtools自制R扩展软件包 197
参考文献 203
随着互联网、大数据、人工智能等技术的发展,科学技术已经不再只是人类社会的生活背景,而是真正关系到人类整体的生存与发展。多学科相结合、以各学科的视角和专业背景促成人类的自由与科学的发展,是科研工作者在当今时代最重要的研究论题,这反映在人文社会科学领域,正是“哲学社会科学”。
如果说自然科学的使命是研究和预测宇宙,那么哲学社会科学则是研究和预测人类社会。如今“计算范式”已经开始引发社会科学领域的科学范式革命,社会科学的实证研究已经形成“计算范式”与“计量范式”并驾齐驱的格局。
在这样的时代与科研背景下,近些年“人人都要学编程”“人人都要会数据统计”在人文社会科学领域显得越来越重要。由于具有开源、强大的网络扩展功能,广泛的社区支持,强大的数据处理/统计分析和可视化功能,R语言和Python语言俨然已成为当前人文社会科学领域的师生们必须掌握的学习和科研工具。该如何选择这些软件工具?如何真正地高效学习编程语言?如何以最简单但又最标准、最正确的姿态选择和学习一门网络编程语言?这些对人文社会科学领域的师生们来说并不是一件简单的事情。
笔者由于跨学科的背景:十年从事计算机领域的教学与开发工作,转型并进入深圳大学新闻与传播学院(人文社会科学领域)任教,在梳理人文社科、自然哲学的脉络关系中得到了“让世界在内心中逐渐合理起来”的哲学愉悦;为满足教学科研的需要,现将“十年来对计算机编程语言教与学的方法”和“对人文社科、自然哲学的统一观察”一并写成《新媒体数据挖掘——基于R语言》,作为这些年来工作与学习的总结。
《新媒体数据挖掘——基于R语言》的全部章节安排如下:
第1章首先从计算社会科学、计算传播学在国内学术圈中的兴起入题,介绍R语言的诞生、功能和在科研工作中的作用,对比几种科研工具的优缺点,并强调“R是一种自带编程环境的统计软件,Python是一种自带统计功能的编程语言”,以供读者做出符合自己实际情况的正确选择。
第2章以R为选择对象,先引入R的核心软件RGui,然后介绍R的综合IDE开发环境RStudio的下载、安装和基本使用。
第3章和第4章本着“程序=数据+代码”的宏观架构,本着将“编程语言作为语言来学习”的核心主线,选择大家熟悉的英语语法为参照物,对R语言的语法进行平缓、细致、精确的讲解,让读者能够真正掌握一种学习任何编程语言的“万能通用方法”:英语被称为动词的语言,名词(相当于数据类型)和以动词(相当于运算符)为核心的谓语构成简单句(相当于表达式语句),为表达更复杂的逻辑,英语语法又扩充出了并列句、复合句等语法结构(相当于流程控制)。读者会发现,几乎所有计算机语言的图书,其前几章必然是“数据类型”“运算符”“流程控制”,这其实就是《新媒体数据挖掘——基于R语言》提出的“编程语言通用学习主线”;主线之外其他语法项目无外乎锦上添花,例如函数是为了提高代码复用率,软件包是为了引入第三方扩充。
第5章至第8章分别讲述如何用R的核心功能包和扩展功能包实现可视化绘图、互联网数据采集、文本挖掘与情感分析、社会网络分析等功能,这些内容不仅非常有趣,而且非常有应用和科研意义。
第9章引入一个案例学习社交编程平台GitHub,不仅加深对第6章中网络数据采集的学习和应用,还可结合附录中的R软件包的制作、发布与引入方法,真正认识到GitHub作为社交编程平台的重要性和意义:程序员世界的重建巴别塔。
在《新媒体数据挖掘——基于R语言》的编写分工上,深圳大学传播学院网络与新媒体系的王小峰老师负责全书的规划、主编与统稿,并参与撰写了第1、第3、第4、第6、第9章;福建师范大学福清分校电子与信息工程学院的方捷老师撰写了第2、第5、第7、第8章和全部附录内容。
由于时间仓促、作者水平有限,《新媒体数据挖掘——基于R语言》难免存在遗漏与不足,编者敬请读者批评与指正,我们将会在后续的工作中不断地调整、改进。
深圳大学 王小峰
2017年10月30日夜
于深圳市福田区安托山
新媒体数据挖掘——基于R语言 下载 mobi pdf epub txt 电子书 格式 2024
新媒体数据挖掘——基于R语言 下载 mobi epub pdf 电子书新媒体数据挖掘——基于R语言 mobi epub pdf txt 电子书 格式下载 2024