博文

目前显示的是 八月, 2019的博文

tidyverts软件包

library(tidyverse) library(tsibble) library(lubridate) library(feasts) #有一套新的进行整洁的时间序列分析的软件包, 为tidyverts软件包。 #tsibble提供了数据基础设施,用于整理时态数据和争用工具。 一个tsibble是一个时间序列对象,比ts,xts等现有类更容易使用。 #使用as_tsibble()可以轻松地将现有ts对象转换为tsibble对象 USAccDeaths %>%   as_tsibble() #这将创建一个Index列,其中包含时间或日期索引。 这些在tsibbles中始终是显式的,并且可以采用丰富的时间和日期类来处理任何类型的时态数据。 第二列是测量变量。 请注意标题中的[1M] ,表示这是月度数据。 #从csv文件创建tsibbles也很容易,首先使用readr::read_csv()然后使用as_tsibble()函数读取它们。 tourism %>%   filter(Purpose=='Holiday') %>%   group_by(State) %>%   summarise(Trips=sum(Trips)) #这里我们有一些名为Keys的附加列。 键和索引的每个唯一组合应该有一行。 不是索引或关键变量的列是测量变量。有三个键( Region , State和Purpose )和一个Measurement( Trips ) tourism %>%   mutate(Year=year(Quarter)) %>%   index_by(Year) %>%   group_by(Region,State,Purpose) %>%   summarise(Trips=sum(Trips)) %>%   ungroup() #Date和Time变量将索引拆分为两个组件,表示日期和一小时。 这使得生成一些有趣的图很容易。  pedestrian %>%   mutate(     Day = lubridate::wday(Date, label = TRUE),     Weekend = (Day %in% c("Sun", "Sat"))

贝叶斯分析Example

--- title: "Untitled" author: "xuefliang" date: "7/11/2019" output:   html_document:     theme: readable     highlight: haddock      df_print: paged     code_folding: show     toc: true     number_sections: true     fig_width: 10.08     fig_height: 6 tags: [r, bayesian, posterior, test] editor_options:   chunk_output_type: console --- ```{r setup, include=FALSE} knitr::opts_chunk$set(echo = TRUE,warning = FALSE,message = FALSE,comment=">") options(knitr.kable.NA = '',digits=2) set.seed(333) library(tidyverse) library(bayestestR) library(rstanarm) library(insight) ``` ## 示例1:启动贝叶斯模型   一旦安装了必要的软件包,我们就可以加载rstanarm(拟合模型),bayestestR(计算有用的指标)和访问参数。 ### 简单的线性模型(又名回归) 我们将从一个简单的回归开始,测试Petal.Length(预测变量或独立变量)与Sepal.Length(响应变量或依赖变量)之间的关系,它们来自iris数据集,默认包含在R中。 #### 拟合模型 让我们从适合模型的频率版本开始,只是为了得到一些参考: ```{r} model <- lm(Sepal.Length ~ Petal.Length, data=iris) summary(model) ``` 在该模型中,Petal.Length和Sepal.Length之间的线性关系是正的和显着的(β= 0.41,t= 21.6,p <.00

贝叶斯分析入门

--- title: "贝叶斯分析入门" author: "xuefliang" date: "5/31/2019" output:   html_document:     theme: readable     highlight: haddock      df_print: paged     code_folding: show     toc: true     toc_float: TRUE     number_sections: false      fig_width: 10.08     fig_height: 6     fig_caption: TRUE tags: [r, bayesian, posterior, test] editor_options:   chunk_output_type: console --- ```{r setup, include=FALSE} knitr::opts_chunk$set(echo = TRUE,warning = FALSE,message = FALSE,comment=">",tidy = T) #eval判断是否执行这个代码eval判断是否执行这个代码 #echo选择是否让代码在结果中显示 #results是否输出结果 options(knitr.kable.NA = '',digits=2) set.seed(333) ``` ```{r results='hide'} #https://github.com/easystats/bayestestR#documentation #https://www.r-bloggers.com/bayesian-models-in-r-2/ #devtools::install_github("easystats/easystats") #https://blog.csdn.net/leolotus/article/details/50769017 ## https://blog.csdn.net/leolotus/article/details/50956532 library(tidyverse) li

贝叶斯分析Article

--- title: "贝叶斯分析Article" author: "xuefliang" date: "7/11/2019" output:   html_document:     theme: readable     highlight: haddock     df_print: paged     code_folding: show     toc: true     toc_float: TRUE     number_sections: false     fig_width: 10.08     fig_height: 6 tags: [r, bayesian, posterior, test] editor_options:   chunk_output_type: console --- ```{r setup, include=FALSE} knitr::opts_chunk$set(echo = TRUE,warning = FALSE,message = FALSE,comment=">") options(knitr.kable.NA = '',digits=2) set.seed(333) library(tidyverse) library(bayestestR) library(rstanarm) library(insight) ``` ## 可信区间(CI) ### 什么是可信区间? 可信区间是贝叶斯统计中的一个重要概念。 其核心目的是描述和总结与您的参数相关的不确定性 。 在这方面,它可能看起来与频率主义的置信区间很相似。然而,虽然他们的目标相似,但他们的统计定义和意义却截然不同。实际上,虽然后者是通过一个充满罕见测试假设和近似的复杂算法获得的,但可信区间的计算相当简单。 由于贝叶斯推断返回了可能的效应值(后验)的分布,可信区间只是包含特定百分比的可能值的范围。 例如,95%可信区间仅仅是后验分布的中心部分,其包含95%的值。 请注意,与频率主义区间相比,这大大提高了贝叶斯区间的可解释性。事实上,贝叶斯框架允许说“给定观察到的数据,效果有95%的概率落在这个范围内” ,而频率较低的直接替代方案(95% 置信区间 )将“ 有

ggfortify包学习

library(ggfortify) library(tidyverse) #PCA (主成分分析) df <- iris[c(1, 2, 3, 4)] prcomp(df) %>%   #autoplot()   #选择数据中的一列来给画出的点按类别自动分颜色   #autoplot(data = iris, colour = 'Species')   #给定label = TRUE 可以给每个点加上标识(以rownames为标准),也可以调整标识的大小   #autoplot( data = iris, colour = 'Species', label = TRUE, label.size = 3)   #给定 shape = FALSE 可以让所有的点消失,只留下标识,这样可以让图更清晰,辨识度更大   # autoplot(data = iris, colour = 'Species', shape = FALSE, label.size = 3)   # 给定 loadings = TRUE 可以很快的画出特征向量。   # autoplot(data = iris, colour = 'Species', loadings = TRUE)   # 可以显示特征向量的标识以及调整他们的大小   autoplot(data = iris, colour = 'Species',            loadings = TRUE, loadings.colour = 'blue',            loadings.label = TRUE, loadings.label.size = 3) # 因素分析 factanal(state.x77, factors = 3, scores = 'regression') %>%   #autoplot(data = state.x77, colour = 'Income')   autoplot(label = TRUE, label.size = 3,          loadings = TRUE, loadings.label = TRUE, load

hrbraddins包

sudo add-apt-repository -y ppa:opencpu/poppler sudo apt-get update sudo sudo apt-get install -y libpoppler-cpp-dev remotes::install_gitlab("hrbrmstr/hrbraddins")

dbplot包学习

#sudo apt-get install sqlitebrowser sqlite3 #remotes::install_github("edgararuiz/dbplot") library(DBI) library(tidyverse) library(janitor) library(dbplot) library(modeldb) library(tidypredict) # Create an ephemeral in-memory RSQLite database con <- dbConnect(RSQLite::SQLite(), ":memory:") dbListTables(con) dbWriteTable(con, "flights", nycflights13::flights) dbWriteTable(con, "mtcars", mtcars) dbListTables(con) dbReadTable(con, "flights") res <- dbSendQuery(con, "SELECT * FROM flights") dbFetch(res) dbListFields(con,"flights") flight <- tbl(con,"flights") flight %>% dbplot_histogram(distance,binwidth = 700)+   labs(title = "Flights - Distance traveled") +   theme_classic() flight %>%   dbplot_raster(sched_dep_time, sched_arr_time) flight %>%   dbplot_raster(     sched_dep_time,     sched_arr_time,     mean(distance, na.rm = TRUE)   ) flight %>%   dbplot_bar(origin) flight %>

janitor学习

#devtools::install_github("sfirke/janitor") #http://sfirke.github.io/janitor/articles/janitor.html library(janitor) test_df <- as.data.frame(matrix(ncol = 6)) names(test_df) <- c("firstName", "ábc@!*", "% successful (2009)",                     "REPEAT VALUE", "REPEAT VALUE", "") #变量名清理 test_df %>%   clean_names() #列联表 mtcars %>%   tabyl(gear, cyl) %>%   adorn_totals(where = c('row','col')) %>%   adorn_percentages("row") %>%   adorn_pct_formatting(digits = 2) %>%   adorn_ns() %>%   adorn_title() #获得重复值 get_dupes(mtcars, wt, cyl) #缺失行列删除 q <- data.frame(v1 = c(1, NA, 3),                 v2 = c(NA, NA, NA),                 v3 = c("a", NA, "b")) q %>%   remove_empty(c("rows", "cols")) #变量值相同列删除 a <- data.frame(good = 1:3, boring = "the same") a %>% remove_constant() #excel数字转日期 excel_numeric_to_date(41103)

ggplot2 热图

m3 <- read.csv("C:\\Users\\liangxuefeng\\Desktop\\heatmap2.csv",header = T,stringsAsFactors = F) m3 %<>% #因子排序   mutate(County=factor(County,levels = unique(County))) %>%   mutate(IncidenceFactor=cut(Incidence,                              breaks = c(-1,0,0.1,0.5,1.0,5.0,10.0,                                         max(m3$Incidence,na.rm = T)),                              labels = c("0","0-0.1","0.1-0.5","0.5-1.0","1.0-5.0","5.0-10.0",                                         ">10.0"))) library(ggplot2) ggplot(m3,aes(x = factor(Year), y = County)) +   geom_tile(aes(fill = Incidence),colour = "white",size = 0.25)  +   scale_y_discrete(expand = c(0,0)) +   scale_x_discrete(expand = c(0,0),                    breaks = c("1960","1970","1980","1990","2000","2010")) +   coord_fixed() +   theme_grey(base_size =