library(ggplot2)
library(dplyr)
library(reshape2)
library(moments)
N<-1000
N2 <- 10000
lwd0 <- 1.25
color <- c('orange','blue','red')
cn <- data.frame(matrix(ncol=4,nrow = 0))
colnames(cn) <- c('mean','sd','skewness','kurtosis')
cha <- function(i,a){
my<-round(mean(i),4)
sy<-round(sd(i),4)
g1<-round(skewness(i),4)
g2<-round(kurtosis(i)-3,4)
return(c(my,sy,g1,g2))
}
x <- seq(-10,10,length=N)
y1 <- dt(x,2)
y2 <- dt(x,30)
y3 <- dnorm(x)
set.seed(2022)
ry1 <- rt(N2,2)
set.seed(2022)
ry2 <- rt(N2,30)
set.seed(2022)
ry3 <- rnorm(N2)
data <- as.data.frame(x) %>% mutate('df2'=y1) %>% mutate('df30'=y2) %>% mutate('norm'=y3)
data2 <- melt(data,id.var="x",variable.name = 'df',value.name = 'y')
data2 %>% ggplot(aes(x=x,y=y,col=df,linetype=df))+
geom_line(lwd=lwd0)+
scale_colour_manual(values=color)+
labs(x='x',y='f(x)',title='t分布与正态分布',color='类型',linetype='类型')+
theme_light()+
theme(plot.title = element_text(size=20,hjust=0.5,vjust=0.5))
cn[1,] <- cha(ry1,cn)
cn[2,] <- cha(ry2,cn)
cn[3,] <- cha(ry3,cn)
rownames(cn) <- c('df2','df30','norm')
cn