Rao*_*ten 5 r dataframe lm coefficients
我想分别计算数据框中每个人的权重和时间的相关系数.数据框由大约40个人组成,每个人观察10次或更少.我已经能够单独计算个体的系数,但是不能让R一次性为该批次做计算.
我的数据看起来像这样:
id <- c(rep(1, times = 10), rep(3, times = 10), rep(4, times = 10))
time <- c(1,2,3,4,5,6,7,8,9,10)
weight <- runif(30, min = 50, max = 100)
dataframe <- data.frame(id, time, weight)
Run Code Online (Sandbox Code Playgroud)
我已成功使用此函数计算单独个体的系数:
coef(lm(weight~time, data = dataframe))[2]
Run Code Online (Sandbox Code Playgroud)
我曾尝试for-loops
,aggregate
和apply
,但无法弄清楚如何计算系数为所有个人一气呵成,输出存储为载体.
按 id分割,然后循环并获取coef:
sapply(split(dataframe, dataframe$id), function(i) coef(lm(weight ~ time, data = i))[2])
# 1.time 3.time 4.time
# 1.48800159 -0.05921987 -2.57523482
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
104 次 |
最近记录: |