我对 R 比较陌生,我想我的代码中不止一件事是不充分的做法(比如,使用 for 循环)。我认为在这个例子中,可以用 apply-family 中的东西更好地解决它,但我不知道如何在我原来的问题中做到这一点 - 所以,如果可能的话,请让 for-loop 成为 for-loop . 如果还有什么不好的,我很高兴听到你的意见。
但我真正的问题是这个。我有:
name <- c("a", "a", "a", "a", "a", "a","a", "a", "a", "b", "b", "b","b", "b", "b","b", "b", "b")
class <- c("c1", "c1", "c1", "c2", "c2", "c2", "c3", "c3", "c3","c1", "c1", "c1", "c2", "c2", "c2", "c3", "c3", "c3")
value <- c(100, 33, 80, 90, 80, 100, 100, 90, 80, 90, 80, 100, 100, 90, 80, 99, 80, 100)
df <- data.frame(name, class, value)
df
我想打印出来。稍后我使用 sink 和 hwriter(将其输出为 html)。我都遇到了问题,所以我希望它是由相同的原因引起的,如果我们解决它来解决问题就足够了。那是代码:
sink("stuff.txt")
for (i in 1:nrow(df)) {
cat(" Name:")
cat(df$name[i-1])
cat("\n")
cat(" Class:")
cat(df$class[i-1])
cat("\n")
}
sink()
file.show("stuff.txt")
我得到的部分输出类似于:
Name:1
Class:1
Name:1
Class:2
Name:1
Class:2
另一方面,我想要的输出应该是:
Name:a
Class:c1
Name:a
Class:c2
Name:a
Class:c2