setwd("D:/R数据文件夹")
bwlspeciesdata <- read.csv("bwlspeciesdata.csv", header=TRUE)
NAPerVariable <- function(x1) {
D1<- is.na(x1)
colSums(D1)
}
ALLS <- unique(bwlspeciesdata$species)
f<-length(levels(factor(bwlspeciesdata$species)))
bwlp<-data.frame(ncol=9)
for (i in 1:f) {
bwlspeciesdata.i <- bwlspeciesdata[bwlspeciesdata $species==ALLS,]
h.i<-c()
R.i<-data.frame(nrow=8, ncol=9)
colnames(R.i)<- c("species", "Z-DBH", "Z-H", "Z-LDW", "Z-LA", "Z-SLA", "Z-LC", "Z-LT", "Z-SSD")
rownames(R.i)<- c("Z-DBH", "Z-H", "Z-LDW", "Z-LA", "Z-SLA", "Z- LC", "Z-LT", "Z-SSD")
R.i[,1]<- ALLS
for(j in 1:8){
NAVar.i <- c()
NAVar.i <- NAPerVariable(bwlspeciesdata.i[,2:9])
n <- length(bwlspeciesdata.i[,1])
if(n - NAVar.i[j] > 2) h.i <- cbind(h.i, j) else h.i <- h.i
}
R.i[h.i,h.i + 1]<- cor(bwlspeciesdata.i[,h.i+1], use="complete.obs")
bwlp<-rbind(bwlp,R.i)
write.csv(bwlp, file="bwlspeciespearson.csv")
#####或者是使用print(bwlpearson)
}
setwd("D:/R数据文件夹")
bwlspeciesdata <- read.csv("bwlspeciesdata.csv", header=TRUE)
NAPerVariable <- function(x1) {
D1<- is.na(x1)
colSums(D1)
}
ALLS <- unique(bwlspeciesdata$species)
f<-length(levels(factor(bwlspeciesdata$species)))
bwlp<-data.frame(ncol=9)
for (i in 1:f) {
bwlspeciesdata.i <- bwlspeciesdata[bwlspeciesdata$species==ALLS,]
h.i<-c()
R.i<-data.frame(nrow=8, ncol=9)
colnames(R.i)<- c("species", "Z-DBH", "Z-H", "Z-LDW", "Z-LA", "Z-SLA", "Z-LC", "Z-LT", "Z-SSD")
rownames(R.i)<- c("Z-DBH", "Z-H", "Z-LDW", "Z-LA", "Z-SLA", "Z- LC", "Z-LT", "Z-SSD")
R.i[,1]<- ALLS
for(j in 1:8){
NAVar.i <- c()
NAVar.i <- NAPerVariable(bwlspeciesdata.i[,2:9])
n <- length(bwlspeciesdata.i[,1])
if(n - NAVar.i[j] > 2) h.i <- cbind(h.i, j) else h.i <- h.i
}
R.i[h.i,h.i + 1]<- cor(bwlspeciesdata.i[,h.i+1], use="complete.obs")
bwlp<-rbind(bwlp,R.i)
write.csv(bwlp, file="bwlspeciespearson.csv")
#####或者是使用print(bwlpearson)
}
运行以后提示错误是 Error in colnames<-(*tmp*, value = c("species", "Z-DBH", "Z-H", "Z-LDW", :
'names' attribute [9] must be the same length as the vector [2]