实验一 R语言的基本操作和数据组织

【实验目的】

  • 熟悉R语言的安装过程和步骤,熟悉Rstudio环境的配置,了解Rstudio操作的基本菜单和命令,掌握R语言数据的主要类型和基本操作。

【实验内容】

  • 从官方网站下载R安装包在本地电脑上进行安装。

  • 安装配置好Rstudio环境。

  • R 语言的基本数据对象和操作

【实验所使用的仪器设备及软件平台】

   计算机 R   RStudio

【实验方法与步骤】

安装R
  • 登录R的官方下载界面

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5BxQMUTZ-1591947629147)(C:\Users\21323\AppData\Roaming\Typora\typora-user-images\image-20200612125432894.png)]

  • 点击链接Download R 3.5.1 for Windows,开始下载4.0.1版本的R,约84MB

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lYzZN7Ef-1591947629150)()]

  • 下载完成后安装,双击.exe文件

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Gm7OzHEG-1591947629151)()]

  • 确定

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9S4wMDGU-1591947629154)()]

  • 一直点击下一步

  • 根据自己的爱好设置下一信息

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tvNraoKK-1591947629156)()]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vc4Ncfij-1591947629159)()]

  • 下一步,及完成安装
配置R的环境变量
  • 检验环境变量

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-W22pS8Up-1591947629160)()]

  • 复制 R的bin文件路径

  • 右击桌面电脑图标 > 选择属性 > 选择左上角的高级系统设置 > 点击环境变量 > 在系统变量中找到path > 点击进去粘贴(若是如下图粘贴即可,末尾记得加上英文分号;若是列表型,点击新建,粘贴)> 按原路径确定

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iLF89xKO-1591947629161)()]

  • 再次检验 (成功出现如下图示)

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MgZLo4R8-1591947629161)()]

安装配置好Rstudio
安装Rstudio
  • step1:打开RStudio官方网站 https://www.rstudio.com/products/rstudio/download/ 点击Free下的Download

    img

  • step2:随后自动跳转到下载链接处。在"Installers for Supported Platforms"中,对应自己的系统,选择合适的版本。

img

  • step3:我选择下载的是“RStudio 1.1.456 - Windows Vista/7/8/10”

img

  • step4:下载后打开程序进入安装向导,点击下一步

img

  • step5:设置安装路径

img

  • step6:下一步进行安装

img

  • step7:根据自身电脑操作系统的位数选择,但64位系统可全选,因为64位向下兼容32位系统。

img

  • step8:启动选项,默认选择No

img

  • step9:正在安装

!

img

  • step10:安装完成并生成桌面快捷方式

img

测试安装是否成功
  • step1:双击RStudio打开IDE

img

  • step2:输入1+1 按Enter+Ctrl运行

img

  • step3:得到结果2,运算正确,安装成功。
RStudio界面介绍

在这里插入图片描述

  • 打开RStudio之后,会出现上图所示的窗口,其中有三个独立的面板。最大的面板是控制台窗口,这是运行R代码和查看输出结果的地方。也就是运行原生R时看到的控制台窗口。其他面板则是RStudio所独有的。隐藏在这些面板中的包括一个文本编辑器、一个画图界面、一个代码调试窗口、一个文件管理窗口等。
R语言的基本数据对象及操作

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7hezNcFs-1591947629176)(]

类型辨别函数转换函数
numericis.numeric()as.numeric()
logicalis.logical()as.logical()
charcteris.charcter()as.charcter()
NAis.na()as.na()
doubleis.double()as.double()
complexis.complex()as.complex()
integeris.integer()as.integer()

注意:

is.integer(x) does not test if x contains integer numbers!

> is.integer(100)
[1] FALSE
> is.integer(3)
[1] FALSE

is.wholenumber <-
function(x, tol = .Machine$double.eps^0.5) abs(x - round(x)) < tol
is.wholenumber(1) # is TRUE
(x <- seq(1, 5, by = 0.5) )
is.wholenumber( x ) #–> TRUE FALSE TRUE …

从结构角度划分R对象

在这里插入图片描述

  • 上图已详细介绍了向量
矩阵
dim()
  > x<-c(1:12)
  > x
   [1]  1  2  3  4  5  6  7  8  9 10 11 12
  > dim(x) <- c(3,4)
  > x
       [,1] [,2] [,3] [,4]
  [1,]    1    4    7   10
  [2,]    2    5    8   11
  [3,]    3    6    9   12
matrix()
> matrix.y<-matrix(1:20,nrow=4,byrow = T)
> matrix.y
     [,1] [,2] [,3] [,4] [,5]
[1,]    1    2    3    4    5
[2,]    6    7    8    9   10
[3,]   11   12   13   14   15
[4,]   16   17   18   19   20

矩阵转换为向量:

> as.vector(matrix.y)
 [1]  1  6 11 16  2  7 12 17  3  8 13 18  4
[14]  9 14 19  5 10 15 20
  • matrix() 函数常用参数
参数描述
data矩阵的元素
nrow行的维数
ncol列的维数
byrow矩阵元素是否按行填充。默认为 FALSE(F)
dimnames以字符型向量表示的行名和列名
  • 矩阵的索引、合并、删除

    • 索引

      > x <- c(1:20)
      > a <- matrix(x,nrow=5,ncol=4,byrow=T,dimnames=list(c("a1","a2","a3","a4","a5"),c("b1","b2","b3","b4")))
      > a
         b1 b2 b3 b4
      a1  1  2  3  4
      a2  5  6  7  8
      a3  9 10 11 12
      a4 13 14 15 16
      a5 17 18 19 20
      > a[2,2]
      [1] 6
      > a["a4","b3"] 
      [1] 15
      > a[2,] # 第2行
      b1 b2 b3 b4 
       5  6  7  8 
      > a[,3] #第3列
      a1 a2 a3 a4 a5 
       3  7 11 15 19 
      > a[c(1:3),] # 第一至三行
         b1 b2 b3 b4
      a1  1  2  3  4
      a2  5  6  7  8
      a3  9 10 11 12
      > a[c(2:3),c(1:3)] # 第2至3行的第1至3列
         b1 b2 b3
      a2  5  6  7
      a3  9 10 11
      
    • cbind、rbind 分别是按行、按列将向量“粘”在一起

      > cbind(a=1:4,b=5:8,c=9:12)
           a b  c
      [1,] 1 5  9
      [2,] 2 6 10
      [3,] 3 7 11
      [4,] 4 8 12
      
      > rbind(a=1:3,b=4:6,c=7:10) #我们发现  数字不足时:循环填充
        [,1] [,2] [,3] [,4]
      a    1    2    3    1
      b    4    5    6    4
      c    7    8    9   10
      Warning message:
      In rbind(a = 1:3, b = 4:6, c = 7:10) :
        number of columns of result is not a multiple of vector length (arg 1)
      
      > rbind(a=1:3,b=4:6,c=7:9)
        [,1] [,2] [,3]
      a    1    2    3
      b    4    5    6
      c    7    8    9
      
  • 矩阵的运算

    函数功能
    ±*/四则运算,要求矩阵的维数相同,对应位置的各元素进行运算
    colSums()对矩阵的各列求和
    rowSums()对矩阵的各行求和
    colMeans()对矩阵的各列求均值
    rowMeans()对矩阵的各行求均值
    t()对矩阵的行列进行转置
    det()求解方程的行列式
    crossprod()求解两个矩阵的内积
    outer()求解矩阵的外积(叉积)
    %*%矩阵乘法,要求i第一个矩阵的列数和第二个矩阵的行数相同(m*n、n*s)
    diag()对矩阵取对角元素,若对象为向量,则生成以向量为对角元素的对角矩阵
    solve()对矩阵求解逆矩阵,要求矩阵可逆
    eigen()对矩阵求解特征值和特征向量
  > x<-matrix(1:20,nrow = 5)
  > x
       [,1] [,2] [,3] [,4]
  [1,]    1    6   11   16
  [2,]    2    7   12   17
  [3,]    3    8   13   18
  [4,]    4    9   14   19
  [5,]    5   10   15   20
  > rownames(x)
  NULL
  > rownames(x)<-LETTERS[1:5]
  > x
    [,1] [,2] [,3] [,4]
  A    1    6   11   16
  B    2    7   12   17
  C    3    8   13   18
  D    4    9   14   19
  E    5   10   15   20
  > rownames(x)
  [1] "A" "B" "C" "D" "E"
  
  
  > t(x)
        A  B  C  D  E
  [1,]  1  2  3  4  5
  [2,]  6  7  8  9 10
  [3,] 11 12 13 14 15
  [4,] 16 17 18 19 20
数组
  • 数组与矩阵类似,是矩阵的扩展,它把数据 的维度扩展到2维以上,可以认为矩阵是特 殊的数组。数组中的元素类型也是单一的, 可以是数值型、逻辑型及字符型。

  • 创建数组

    # 命令格式
    array(向量名,维度说明,dimnames=list(维名称列表)) 
    # 向量名:数据事先存储在指定的向量名中 
    # 维度说明:用于描述各维度的最大值,是一个数值型向量。 
    # dimnames:用于指定各维的名称,是可选的。
    
    > # 创建数组 > x <- c(1:30) 
    > # 定义数组各维度的名称 
    > dim1 <- c("A1", "A2", "A3") 
    > dim2 <- c("B1", "B2", "B3", "B4", "B5") 
    > dim3 <- c("C1", "c2") > 
    # 创建数组,数组维数为3,各维度下标的最大值为3,5,2 
    > (a <- array(x, dim = c(3, 5, 2), dimnames = list(dim1, dim2, dim3)))
    , , C1
    
       B1 B2 B3 B4 B5
    A1  1  4  7 10 13
    A2  2  5  8 11 14
    A3  3  6  9 12 15
    
    , , C2
    
       B1 B2 B3 B4 B5
    A1 16 19 22 25 28
    A2 17 20 23 26 29
    A3 18 21 24 27 30
    
    
    • 数组的索引

      • 与矩阵和向量类似,数组也可以通过下标和方括号来索 引数组中的元素,不同的是数组的维度更高,下标也更 复杂

      • > a[2,4,2]
        [1] 26
        > a["A3","B5",1]
        [1] 15
        > dim(a)
        [1] 3 5 2
        
数据框
  • 数据框是仅次于向量的最重要的数据对象类型。由于不 同的列可以包含不同模式(数值型、字符型等)的数据, 数据框的概念较矩阵更为一般。在R语言中,很多数据 分析算法函数的输入对象都是数据框对象,而且在使用 读取Excel/txt等格式数据集的函数时,也是以数据框 为对象输入的。

  • 数据框不同的列可以是不同模式的数据,但数据框内每 个列的长度必须相同

  • 在实际操作中,数据的一列代表某一 变量属性的所有 取值,用一行代表某一样本的数据。

  • data.frame(vector1,cevtor2,……)
    
  • 举例参考上一节

因子
  • 变量可归结为名义型、有序型或连续型变量

  • 名义型变量是没有顺序之分的类别变量。糖尿病类型Diabetes( Type1、Type2)是名义型变量的一例。即使在数据中Type1编码 为1而Type2编码为2,这也并不意味着二者是有序的。

  • 有序型变量表示一种顺序关系,而非数量 关系。病情Status( poor, improved, excellent)是顺序型变量的一个上佳示例。我 们明白, 病情为poor(较差)病人的状态不如improved(病情 好转)的病人,但并不知道相差多少。

  • 连续型变量可以呈现为某个范围内的任意值,并同时表示了顺序 和数量。年龄Age就是一个连续型变 量,它能够表示像14.5或 22.8这样的值以及其间的其他任意值。很清楚,15岁的人比14岁 的人年 长一岁。

  • 类别变量和有序变量(表示一种顺序关系而非 数量关系,病情是顺序型变量的一个示例)在 R中称为因子(factor)。

  • 因子提供了一个简单而紧凑的形式来处理分类 (名义型)数据。

  • 因子用水平来表示所有可能的取值,如果数据 有取值个数固定的名义变量,因子特别有用。

  • 因子在R中非常重要,因为它决定了数据的分 析方式以及如何进行视觉呈现。

  • 创建因子

factor(x,levels,labels,exclude,ordered=NA,nmax=NA)
参数描述
x表示需要创建为因子的数据,是一个向量
levels表示所创建因子数据水平,如果不指定的话,就是参数x中不重复的所有值
labels用来标识这一水平的名字,与水平一一对应,方便识别
exclude表示哪些水平是不需要的
ordered一个逻辑值,为TRUE时表示有序因子,FALSE(无序因子)
nmax表示水平个数的上限
> fpain
[1] <NA> <NA> <NA> <NA> <NA>
Levels: A B C D
> pain
[1] 0 3 2 2 1
> fpain<-factor(pain,levels = 0:3)
> levels(fpain)<-c("none","mild","medium","severe")
> fpain
[1] none   severe medium medium mild  
Levels: none mild medium severe
> as.numeric(fpain)
[1] 1 4 3 3 2
> levels(fpain)
[1] "none"   "mild"   "medium" "severe"
> patientID<-c(1,2,3,4)
> age<-c(25,34,28,52)
> diabetes<-c("type1","type2","type1","type1")
> status<-c("poor","improved","excellent","poor")
> diabetes<-factor(diabetes)
> status<-factor(status,ordered =TRUE)
> patientdata<-data.frame(patientID,age,diabetes,status)
> str(patientdata)
'data.frame':	4 obs. of  4 variables:
 $ patientID: num  1 2 3 4
 $ age      : num  25 34 28 52
 $ diabetes : Factor w/ 2 levels "type1","type2": 1 2 1 1
 $ status   : Ord.factor w/ 3 levels "excellent"<"improved"<..: 3 2 1 3
> summary(patientdata)
   patientID         age         diabetes
 Min.   :1.00   Min.   :25.00   type1:3  
 1st Qu.:1.75   1st Qu.:27.25   type2:1  
 Median :2.50   Median :31.00            
 Mean   :2.50   Mean   :34.75            
 3rd Qu.:3.25   3rd Qu.:38.50            
 Max.   :4.00   Max.   :52.00            
       status 
 excellent:1  
 improved :1  
 poor     :2  
              
              
              
> patientdata
  patientID age diabetes    status
1         1  25    type1      poor
2         2  34    type2  improved
3         3  28    type1 excellent
4         4  52    type1      poor
  • 因子创建 gl():

    gl(n,k,length=n*k,labels=seq_len(n),ordered=FALSE)
    
    参数描述
    n表示因子水平的个数
    k表示每个水平的重复数
    length表示生成的序列的长度
    labels一个n 维向量,表示因子水平
    ordered一个逻辑值,为true表示有序因子,为false即为无序因子
    > gl(3,3)
    [1] 1 1 1 2 2 2 3 3 3
    Levels: 1 2 3
    > gl(2,3,labels = c("T","F"))
    [1] T T T F F F
    Levels: T F
    > gl(2,1,10)
     [1] 1 2 1 2 1 2 1 2 1 2
    Levels: 1 2
    > gl(2,2,10)
     [1] 1 1 2 2 1 1 2 2 1 1
    Levels: 1 2
    > gl(2,2,10,ordered = T)
     [1] 1 1 2 2 1 1 2 2 1 1
    Levels: 1 < 2
    > gl(2,2,ordered = T)
    [1] 1 1 2 2
    Levels: 1 < 2
    > gl(3,3,ordered = T)
    [1] 1 1 1 2 2 2 3 3 3
    Levels: 1 < 2 < 3
    
  • 因子的存储方式

    • 在R语言中,因子是以整数型向量存储的,每个因子水平 对应一个整数型数字。对于字符型向量创建的因子,会按 照字母顺序排序,再对应到整数型向量中
列表
  • 列表是R的数列类型中最为复杂的一种。一般来说,列 表就是一些对象(或成分component)的有序组合。 列表允许整合若干个(可能无关的)对象到单个对象名下。 某个列表可能是若干个向量、矩阵、数据框,甚至其他 列表的组合。

  • 在R进行数据分析和挖掘过程中,向量和数据框的使用 频率是最高的,列表则是存储较复杂的数据时作为数据 对象类型。

  • 由于以上两个原因,列表成为了R中的重要数据结构。 首先,列表允许以一种简单的方式组织和重新调用不相 干的信息。其次,许多R函数的运行结果都是以列表的 形式返回的。

  • 列表的创建:

    list(object1,object2,……)
    
    # 建立一个包含不同数据类型向量的列表
    > data<-list(a=c(1,2,3,4),b=c("one","two","three"),c=c(T,F),d=(1+2i))
    > data
    $a
    [1] 1 2 3 4
    
    $b
    [1] "one"   "two"   "three"
    
    $c
    [1]  TRUE FALSE
    
    $d
    [1] 1+2i
    
    > summary(data) 
      Length Class  Mode     
    a 4      -none- numeric  
    b 3      -none- character
    c 2      -none- logical  
    d 1      -none- complex 
    
  • 为列表中的对象命名

    > names(data)
    [1] "a" "b" "c" "d"
    > names(data)<-c("vector1","vector2","vector3","vector4")
    > data
    $vector1
    [1] 1 2 3 4
    
    $vector2
    [1] "one"   "two"   "three"
    
    $vector3
    [1]  TRUE FALSE
    
    $vector4
    [1] 1+2i
    > names(data)
    [1] "vector1" "vector2" "vector3" "vector4"
    
  • 列表的索引

    • 在双重方括号中指明代表某个成分的数字或名称 来访问列表中的元素;

    • 也可以通过$来按名称索引列。

      > data[[2]]
      [1] "one"   "two"   "three"
      > data$c
      [1]  TRUE FALSE
      
  • 列表的编辑

    • c() 函数进行合并,unlist() 把列表转化为向量

      > class(data)
      [1] "list"
      > data_2<-unlist(data)
      > class(data_2)
      [1] "character"
      > data_2
      vector11 vector12 vector13 vector14 vector21 
           "1"      "2"      "3"      "4"    "one" 
      vector22 vector23 vector31 vector32  vector4 
         "two"  "three"   "TRUE"  "FALSE"   "1+2i"
      

1] 1+2i

names(data)
[1] “vector1” “vector2” “vector3” “vector4”




- 列表的索引

- 在双重方括号中指明代表某个成分的数字或名称 来访问列表中的元素;

- 也可以通过$来按名称索引列。

  ```R
  > data[[2]]
  [1] "one"   "two"   "three"
  > data$c
  [1]  TRUE FALSE
  ```

- 列表的编辑

- c() 函数进行合并,unlist() 把列表转化为向量

  ```R
  > class(data)
  [1] "list"
  > data_2<-unlist(data)
  > class(data_2)
  [1] "character"
  > data_2
  vector11 vector12 vector13 vector14 vector21 
       "1"      "2"      "3"      "4"    "one" 
  vector22 vector23 vector31 vector32  vector4 
     "two"  "three"   "TRUE"  "FALSE"   "1+2i"
  ```

  

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
生物信息学是科学研究的一个多学科领域,它使用计算机科学知识来分析生物数据。 生物信息学通常在实验室中用于湿实验室实践。 该研究领域涵盖基因组学,蛋白质组学和代谢组学。 这些中的每一个都处理由世界著名组织(如NCBI,EMBL等)创建的各种数据库。各个级别的学生,院士,企业人员从诸如ENA,Ensembl,UniProt,PDB等著名数据库中提取信息。提取的数据需要进行转换以进行分析和图形绘制。 根据分析结果和图形结果,科学家和研究人员得出结论或做出重要决定,以建立某些生物学事实。 现在,从巨大的生物学数据库中提取生物学数据是一项艰巨的任务。 它需要一个非常有效的工具,该工具不仅可以提取信息,而且还可以提供数据分析和图形绘制便利。 在技​​术领域中,有许多编程工具可以利用它们的弱点和优点。 例如C,C ++,Perl,Ruby,JavaScript或PHP,Java,R,Python,Bash等语言工具。生物信息学的研究人员大致分为两类:第一类不想自己制作软件和其他人。 两者都将进行数据分析; 执行统计测试,绘制图表并使用其他程序员制作的生物信息学软件。 但是第二组可能有兴趣编写自己的脚本或构建供自己使用或帮助其他研究人员的软件。 对我来说,R编程将是上述两个小组的最佳选择。 因为它具有丰富的生物软件包集合,可支持在生物信息学研究领域对lncRNA进行深入分析。
《Android应用开发I》实验指导书 计算机科学及技术系 目 录 实验一 :第一个应用程序 3 实验二 :基本控件 1 实验三 :高级控件 4 实验四 :菜单和对话框 7 实验五 :数据存储 8 实验六 :后台处理及获取网络数据 9 实验一 :第一个应用程序 【实验概述】 搭建环境,并运行第一个应用程序. 实验类别:验证类。 学时:1学时。 组织形式:学生独立完成。 考核方式:随堂检查. 【实验目的】 熟悉Android开发环境使用以及程序运行过程。 【实验环境】 硬件环境:笔记本 软件环境:Eclipse+SDK+JDK 编程语言:Java 【相关知识】 无. 【实验内容】 1. 安装环境:安装JDK,解压Eclipse,配置SDK路径. 2. 新建一个项目HelloWorld。 3。创建一个以学号命名的模拟器,然后运行该项目. 实验二 :基本控件 【实验概述】 完成一个登录+注册的界面. 实验类别:验证类。 学时:4学时. 组织形式:学生独立完成。 考核方式:检查。 【实验目的】 1.掌握基本控件的使用,例如EditText、TextView、Button、CheckBox等控件使用。 2. Intent跳转。 【实验环境】 硬件环境:笔记本 软件环境:Eclipse+SDK+JDK 编程语言:Java 【相关知识】 界面布局、EditText、TextView、Button、CheckBox等控件使用。 【实验内容】 实现类似下图的效果:界面布局根据大家喜好自行决定。(下面只是参考) 1. 新建项目. 2. 在项目的布局文件中,修改为以下内容。 登录布局 (3)新建Activity类,并设置布局文件为register.xml。内容如下: 注册布局 (4)在登录界面的【登录】按钮中增加页面跳转代码: "Intent intent = new Intent(); " "intent。setClass(LoginActivity。this, MainActivity.class); " "LoginActivity。this。startActivity(intent); " (5)运行效果: 实验三 :高级控件 【实验概述】 Spinner/ListView/Fragment 实验类别:验证类。 学时:4学时。 组织形式:学生独立完成。 考核方式:检查。 【实验目的】 使用Spinner/ListView/Fragment这些高级控件。 【实验环境】 硬件环境:笔记本 软件环境:Eclipse+SDK+JDK 编程语言:Java 【相关知识】 Spinner/ListView/Fragment 【实验内容】 一、Spinner控件使用。 运行效果: 实现步骤:(1)新建项目SpinnerDemo. (2)布局文件中:增加Spinner和TextView控件. (3)Activity类中: "spinner1=(Spinner)findViewById(R.id.spinner1); " "tv=(TextView)findViewById(R。id。textView1); " (4)准备和设置适配器: "ArrayAdapter<CharSequence> " "adapter=ArrayAdapter。createFromResource " "(this, R。array.cities, android。R。layout.simple_spinner_item " "); " "adapter。setDropDownViewResource " "(android.R.layout.simple_spinner_dropdown_item); " "spinner1.setAdapter(adapter); " (5)增加事件监听: " spinner1。setOnItemSelectedListener(new " "OnItemSelectedListener() { " "@Override " "public void onItemSelected(AdapterView<?> parent, View view, " "int position, " "long id) { " "tv。setText("您选择的城市为:"+parent.getItemAtPosition(positio" "n)); " "} " "@Override " "public void onNothingSelected(AdapterView〈?> parent) { " "// TODO Auto—generated method stub " "} " "}); " 二、ListView+Fragment控件使用。 运行效果
第1章 为什么学习R语言 1 1.1 R是什么 2 1.1.1 R是yi款悠秀的现代科研 软件 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的zui简标准操作 28 2.2.3 RStudio的工作界面 31 2.2.4 RStudio的用户自定义配置 32 2.3 示例:我的diyi个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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值