计算家系平均遗传力时,如果数据不平衡(小区株树不一致)需要用到调和小区株树(nk)。
- 单点
- 多点
nk的计算在黄少伟的论文中(黄少伟; 钟伟华 用小区平均值估算单株遗传力的方法. 华南农业大学学报 1998, 19, 76–81.)有介绍,计算公式为:
关键点是得到具体方法每个小区的株树,加起来然后用地点数、区组数和家系数的积除一下即可得。
- SPSS
用general linear model中的univariate分析,响应变量选择一个最好没有缺失值的变量,单点时自变量选择family和block,多点则把site也选上。当然我们并不真的要做回归或ANOVA,所以要在options中勾选描述性统计,这个才是我们需要的。出来的结果是这样的:
我们需要最右列N,复制到Excel中,注意把所有Total的行去掉,按照公式计算就可以了。
- R
n_s=2; n_r=5; n_f <- length(levels(df$Fam))
df_freq <- table(df$Fam, df$Rep) %>% as.data.frame() %>% filter(Freq!=0)
n_p <- n_r*n_f/sum(1/df_freq$Freq)
harm_plot <- function(Fam, Rep) {
n_f <- length(levels(Fam))
n_r <- length(levels(Rep))
df_freq <- table(Fam, Rep) %>% as.data.frame() %>% filter(Freq!=0)
n_p <- n_r*n_f/sum(1/df_freq$Freq)
return(n_p)
}