r - 如何编写一个使用配对 t 检验比较时间序列数据点的函数
问题描述
在下面创建的数据集中,假设我随机捡起 20 块平坦的岩石。这些岩石中的每一个都被分配了一个唯一的ID
编号。我测量了每块岩石最长轴表面上7 种物质( Copper
、Iron
、Carbon
、Lead
、Mg
、CaCO
和)的浓度。以毫米为单位记录,因此是每个岩石长度的函数。请注意,并非所有的长度都相同。是一个分组变量,描述拾取的位置。Zinc
Distance
Rocks
Location
Rock
ID <- data.frame(ID=rep(c(12,122,242,329,595,130,145,245,654,878), each = 200))
ID2 <- data.frame(ID=rep(c(863,425,24,92,75,3,200,300,40,500), each = 300))
RockID<-data.frame(RockID = c(unlist(ID), unlist(ID2)))
Location <- rep(c("Alpha","Beta","Charlie","Delta","Echo"), each = 1000)
a <- rep(c(1:200),times = 10)
b <- rep(c(1:300), times = 10)
Time <- data.frame(Time = c(unlist(a), unlist(b)))
set.seed(1)
Copper <- rnorm(5000, mean = 0, sd = 5)
Iron <- rnorm(5000, mean = 0, sd = 10)
Carbon <- rnorm(5000, mean = 0, sd = 1)
Lead <- rnorm(5000, mean = 0, sd = 4)
Mg <- rnorm(5000, mean = 0, sd = 6)
CaCO <- rnorm(5000, mean = 0, sd = 2)
Zinc <- rnorm(5000, mean = 0, sd = 3)
data <-cbind(RockID, Location, Time,Copper,Iron,Carbon,Lead,Mg,CaCO,Zinc)
data$ID <- as.factor(data$RockID)
对于每种物质,我想知道这些岩石中以下点之间是否通常存在显着差异: 1. 第一次观察和前 5 次的平均值、前 7 次的平均值和前 10 次观察的平均值 2 . 最后一次观察和最后 5 次的平均值 最后 7 次的平均和最后 10 次观察的平均值 3. 第一次观察和最后一次观察
我将如何编写一个函数,对每个变量的每个点(或 n 点的平均值)进行 t 检验,并将 p 值粘贴到结构如下的数据框中:
Points Copper Iron Carbon Lead Mg CaCO Zinc
Point1.vs.First5 … … … … … … …
Point1.vs.First7
Point1.vs.First10
Pointn.vs.Last5
Pointn.vs.Last7
Pointn.vs.Last10
Point1.vs.Pointn
解决方案
推荐阅读
- php - 如何在 laravel 中间件中收听 GET 参数
- python - 并排附加 2 个 Pandas 数据帧
- modelica - Modelica 如何检查结构奇点?
- .net - 依赖注入的服务返回 null
- arrays - 使用 jq 将两个 JSON 数组合并到一个文件中
- angular - ViewChild 从子组件返回到父组件时返回 undefined
- wordpress - 如何从永久 URL 中删除“百分比”(%)?
- batch-file - 调用doxygen时在命令行中配置一些变量
- python - += 似乎没有使用递归
- excel - 在 Excel 工作表中创建多个动态下拉列表