【发布时间】:2015-08-17 14:24:26
【问题描述】:
我正在尝试将行名称粘贴到 R 中的 for 循环中。这样我可以将 id 保留在每个循环的输出中,以便于分割。
我的 for 循环运行良好。只是我的粘贴功能没有。
UK_profileList 是数据框。下面的函数get_ga来自RGA包。
我的代码是:
start.date <- "2015-01-01"
end.date <- format(Sys.Date(), format = "%Y-%m-%d")
for (i in 1:nrow(UK_profileList)) {
allData <- get_ga(UK_profileList[i,], start.date, end.date, dimensions = "ga:month, ga:day, ga:minute", metrics = "ga:sessions")
row.names(allData[i]) <- paste(UK_profileList[i,], sep="")
}
我得到错误:
错误
row.names(tmp`, value = "8131437") : 'row.names 长度无效
请注意,我在这里知道这个帖子:using paste() in a for loop with glm
但它是 glm 特有的...
【问题讨论】:
-
将粘贴功能更改为
paste(UK_profileList[i,], collapse = "")有效吗? -
也许
row.names(allData[i]) <- paste(as.character(UK_profileList[i,]), sep="") -
尝试将
row.names(allData[i])更改为row.names(allData[i,]) -
您是否遇到任何错误?你能用
head(dput())显示你的数据的一小部分吗?您的数据在括号内,因此我们可以查看 -
@GKyle 感谢您的回答。你能在帖子中更新你的数据结构吗?这样你就不会受限于 cmets 的大小限制。
head(dput())或UK_profileList在类型和类方面可能会提供更多信息。
标签: r