分类: R语言

  • 30天学会R语言

    医学论文与统计分析“30天学会R语言”30篇学习文章合集来了,欢迎坚持从零开始学习!
    http://www.datasoldier.net/archives/2057

  • 一款全新的统计软件:JASP

    原创 数据小兵  2020-02-11 09:02  阅读 7,386 次

    视频课程《SPSS统计分析:从入门到实践提高》

    大家好,我是数据小兵。从2008年开始我一直在使用和推广SPSS统计分析,为此建立了datasoldier.net博客,开辟了SPSS统计训练营微信号,还开发了相应的视频课程。不过,从今天开始我将为大家带来全新的统计分析体验,利用这个博客和微信号全方位介绍两款新的、免费开放的统计软件,它们是JASPjamovi

    今天先来介绍JASP

    打开软件后看到的第一个界面,怎么样是不是很别致呢。

    非常醒目的告诉所有人,JASP是免费的、友好的、灵活的。它是一个能令人感到耳目一新的统计工具。

    什么是JASP ?

    JASP是一种全新的统计工具,完全免费、开源开放、兼容并蓄。它让用户可以在电子表格数据上,轻松的点击、拖放菜单对话框来完成统计分析。它包含经典统计分析方法,比如描述统计、t检验、方差分析、相关与回归分析、因子分析等,而且令人兴奋的是,它还包含有最新的贝叶斯统计方法。

    说得通俗一点,JASP就像SPSS那样容易操作,不用写语法代码,通过鼠标点击菜单完成统计分析,更为关键的是,它是免费的,完全免费。

    容易操作、完全免费,这些特点太令人振奋了。

    为什么使用JASP ?

    没有比较就没有伤害,JASP与当前流行的同类统计工具相比较有许多优势。

    1)与SAS、SPSS、Stata等商业软件工具相比,JASP是免费和开源的,它不仅包括常用统计方法,另外还积极地开发了配套的贝叶斯方法。

    2)与R语言等免费开源软件包相比,JASP绝大多数情况下不需要用户写语法代码,它提供了一种能“即时反馈”的“拖放”体验,在菜单和对话框上通过“拖放”的形式完成统计分析,就像SPSS那样,但是别SPSS更即时,菜单参数选的设置和结果反馈响应几乎是瞬间完成,而且并不需要切换新的窗口。

    当然我们也要客观看待JASP,因为它毕竟是新统计软件,目前性能还不是足够的稳定,版本更迭、统计方法更新虽然很快,但是当前官方还缺乏完善的教程和说明文档,许多功能的实现还需要用户自己琢磨。

    小兵会努力,希望感兴趣的读者都来关注订阅这个微信号。

    马上下载使用JASP

    怎么样呢?小兵才用了几天JASP,就彻底喜欢上了这款新统计软件,心动不如行动,所有人任何人,只要你想,那么现在马上欢迎你下载安装并使用JASP。

    下载地址:
    https://jasp-stats.org/download/

    或者百度搜索“JASP统计分析”,去JASP官方网站免费下载并使用它。

    更多JASP统计分析教程、案例,欢迎关注本博客哦~

    全文完
    文/图=数据小兵

  • 分组数据制作散点图

    >library(ISwR)
    >summary(hellung)
        glucose           conc           diameter
     Min.   :1.000   Min.   : 11000   Min.   :19.20
     1st Qu.:1.000   1st Qu.: 27500   1st Qu.:21.40
     Median :1.000   Median : 69000   Median :23.30
     Mean   :1.373   Mean   :164326   Mean   :23.00
     3rd Qu.:2.000   3rd Qu.:243000   3rd Qu.:24.35
     Max.   :2.000   Max.   :631000   Max.   :26.30
    > plot(conc,diameter,pch=c(1,16)[factor(glucose)])
    Error in plot(conc, diameter, pch = c(1, 16)[factor(glucose)]) :
      找不到对象'conc'
    > attach(hellung)
    > plot(conc,diameter,pch=c(1,16)[factor(glucose)])
    > plot(conc,diameter,pch=c(1,16)[factor(glucose)],log="x")
    
  • R绘制箱式图

    x <- c(76,9.97,71,70,93,86,83,78,85,81,65,95,51,74,78,63,91,82,
    75,71,55,93,81,76,88,66,79,83,92,78,83,78,74,87,85,69,90,80,77,84,91,74,79,89)
    f <- gl(4,11,44)
    #f <- gl(4,11,44,labels = c("A","B","C","D"))
    boxplot(x~f,ylim=c(40,100))
  • rstudio ctex模板文档错误,rticles升级到0.15版遇到错误

    rticles升级到0.15版遇到错误,造成无法编译生成PDF文件

    # 软件环境
    ‘tinytex’ 包 version 0.25.1
    ‘rticles’ 包version 0.15(!!0.14版升级到0.15版遇到错误!!)
    安装以上两个包文件:
    install.packages(‘tinytex’,’rticles’)
    tinytex::install_tinytex() #通过此命令可以安装rstudio专用tex live文件,来支持“中文”生成PDF文件
    本文使用的rstudio 版本:
    RStudio Version 1.3.1073,R版本 version 4.0.2 (2020-06-22)

    # 出错内容
    ctex模板文件,编译生成PDF文件时,一直报错:
    ## R markdown窗口:
    Error in yaml::yaml.load(…, eval.expr = TRUE) :
    Duplicate map key: ‘documentclass’
    Calls: … parse_yaml_front_matter -> yaml_load ->
    停止执行
    ## console窗口:
    Error in yaml::yaml.load(…, eval.expr = TRUE) :
    Duplicate map key: ‘documentclass’

    # 解决办法: 删除 模板文件头部第一个“documentclass: ctexart”. 文件头如下

    ---
    title: "在R Markdown文档中使用中文"
    author:
    - 谢益辉
    - liutiezhu
    - 刘铁柱
    keywords:
    - 中文
    - R Markdown
    output:
      pdf_document:
        toc: yes
      rticles::ctex:
        fig_caption: yes
        number_sections: yes
        toc: yes
    documentclass: ctexart
    ---

    另外的一个解决方法:

    linux&windows:

    install.packages("remotes")
    remotes::install_github("rstudio/rticles")
    

    安装最新 rticles模板,再次选用ctex模板,无需改动任何内容,即可生成PDF文件

    Mac OS 输入

    remotes::install_github('rstudio/rticles', host = "api.github.com")


  • 正态分布曲线绘制

    x=c(-10:10)
    curve(dnorm(x), -3, 3, main="正态分布曲线")  #绘制N(0,1)正太分布曲线。
    abline(v=1.96, col = 2)   # v-垂直线在X轴的位置0.4
    abline(v=-1.96, col = 2)   # v-垂直线在X轴的位置0.4
    
    f<-seq(-4,4,.2)
    plot(f,dnorm(f),type="l")
    
    x <- rnorm(30, 10, 2)
    summary(x)
    hist(x)
    boxplot(x)
    qqnorm(x);qqline(x)
    
  • R回归分析 r-notebook

    ---
    title: "R Notebook"
    output:
      html_document:
        df_print: paged
      html_notebook: default
      pdf_document: default
    ---
    ```{r}
    library(ISwR)
    attach(thuesen)
    lm(short.velocity~blood.glucose)
    head(thuesen)
    #thuesen
    y <- lm(short.velocity~blood.glucose)
    summary(y)    #回归结果 概要输出
    anova(y)      #回归方差分析
    plot(blood.glucose,short.velocity)
    #abline(lm(short.velocity~blood.glucose))
    abline(1.3,.022) #截距、斜率画直线
    segments(blood.glucose,fitted(y),blood.glucose,short.velocity)
    cc <- complete.cases(thuesen) #处理缺失值
    thuesen[cc,]     #另外一个方法处理缺失值,更好
    #options(na.action=na.exclude)
    pred.fram <- data.frame(blood.glucose=4:20)
    pp <- predict(y,int="prediction",newdata=pred.fram)   #直线预测数据
    pc <- predict(y,int="confidence",newdata=pred.fram)   #可信区间预测
    plot(blood.glucose,short.velocity,ylim = range(short.velocity,pp,na.rm = T))
    pred.gluc <- pred.fram$blood.glucose
    matlines(pred.gluc,pc,lty = c(1,2,2),col = "black")   #矩阵绘制线图
    matlines(pred.gluc,pp,lty = c(1,3,3),col = "black")
    ```
  • R换源安装包文件

    install.packages('tidyverse', repos =
    'https://mirrors.tuna.tsinghua.edu.cn/CRAN')
    
    安装 tidyverse包时,可提高速度和安装成功率
  • R ggplot 绘图

    library(tidyverse, lib.loc = “/usr/lib64/R/library”)
    ggplot(data = mpg,mapping = aes(x = displ, y = hwy,color=class)) + geom_point()