求:1-30列中的数值占原始列中的百分比。解决办法:
Excel公式计算,存在问题:输入公式时候,原始数据不存在。 R语言解决。
{
rm(list=ls())
getwd()
setwd("E:\\0000\\0001数据\\数据\\cess\\示例文件")}
##import 表格
library(readxl)
dataset <- read_excel("示例文件.xlsx", sheet = 3)
View(dataset)
{
dat <- dataset
## 每一行的3:30除以原始的,然后循环。
a <- c(1:100)
b <- c(3:30)
dat_T <- dat[1,]
dat_T <- dat_T[-1,]
for(i in a){
dat1 <- dat[i,]
for (j in b) {
dat1[1,j] <- dat1[1,j]/dat1[1,2]
}
dat1 <- as.data.frame(dat1)
dat_T <- rbind(dat_T,dat1)
}
}
library(xlsx)
write.xlsx(dat_T, file = "示例文件.xlsx", sheetName = "计算百分比",append = TRUE)
重点地方: for循环中的代码。
for(i in a){
dat1 <- dat[i,]
for (j in b) {
dat1[1,j] <- dat1[1,j]/dat1[1,2]
}
dat1 <- as.data.frame(dat1)
dat_T <- rbind(dat_T,dat1)
}
,