除了“x”和“y”列,我还有数据框用于分割数据(假设现在是2)。我希望在通过2列之后执行诸如散点图或lm之类的函数在“x”和“y”上。使用带有2个参数的函数执行应用或聚合
我一直在每个子集之后存储“mini”数据并调用更多的循环,直到我得到所需的“x”和“y”,但在3个或更多循环后变得复杂。最近,我试图创建一个存储所有可能组合的'关键'变量。
有没有简单的方法先分割数据并调用函数?也许是应用或聚合的延伸,但所有因素都要经过所有组合。
country <- rep(c("Australia","UK"), 2, each = 6)
gender <- rep(c("M","F"),1, each = 12)
X_height <- rep(seq(150,200,10),4)
Y_weight <- c(seq(70,95,5),
seq(71,96,5),
seq(65,90,5),
seq(66,91,5))
df <- data.frame(country, gender, X_height, Y_weight)
df[,"Key"] <- paste(df$country, df$gender, sep="_")
keys <- unique(df$Key)
par(mfrow = c(2,2))
sapply(1:length(keys), function(i){
with(subset(df, Key == keys[i]),plot(x = X_height, Y_weight, main = keys[i]))
})
感谢
它可能是有帮助的标记用正确的语言标记你的问题。 – vikingosegundo