gpt4 book ai didi

R:循环数据框列表并创建具有约束的列图

转载 作者:行者123 更新时间:2023-12-02 04:43:40 25 4
gpt4 key购买 nike

我想遍历数字数据框列表,并使用 for 循环为每个数据框的特定列创建绘图。我有一个工作代码,但结果很奇怪。我希望只创建两个图,但 R 创建了四个图,我根本不明白为什么,特别是因为当我使用打印而不是绘图时,他正在打印我期望的值。下面是一个更大数据集的小例子。非常感谢任何想法。非常感谢!

# Create data
a <- c(1,2,3,4,5)
b <- c(6,7,8,9,10)
c <- c(0,0,0,1,0)

d <- c(1,2,3,4,5,6,7,8,9,10)
e <- c(11,12,13,14,15,16,17,18,19,20)
f <- c(0,0,0,0,0,0,0,1,0,0)

# Create data frames
df1 <- data.frame(cbind(a,b,c))
df2 <- data.frame(cbind(d,e,f))
names(df2) <- c("a","b","c")

# Create list of data frames
l <- list(df1,df2)

# Create titles for plots
titlenames <- c("Graph 1","Graph 2")

# Loop over list of data frames and create plots
for (i in l){ for(j in titlenames) {
plot(x=(i$a[i$c==0]),y=(i$b[i$c==0]),main="",xlab="",ylab="")
title(main=paste(j))
}}

最佳答案

你应该做这样的事情吗? -

# Loop over list of data frames and create plots
for (i in seq(titlenames)) {
plot(x=(l[[i]]$a[l[[i]]$c==0]),y=(l[[i]]$b[l[[i]]$c==0]),main="",xlab="",ylab="")
title(main=titlenames[i])
}

我发布为答案,评论会很丑陋且难以阅读。基本上,我删除了 j 循环并使用 1 跟踪所有内容,现在循环遍历 1:n,而不是 l

关于R:循环数据框列表并创建具有约束的列图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20265681/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com