【发布时间】:2010-12-14 12:25:42
【问题描述】:
我有一个数据框,对于该数据框中的每一行,我必须进行一些复杂的查找并将一些数据附加到文件中。
dataFrame 包含生物研究中使用的 96 个孔板中选定孔的科学结果,因此我想做如下事情:
for (well in dataFrame) {
wellName <- well$name # string like "H1"
plateName <- well$plate # string like "plate67"
wellID <- getWellID(wellName, plateName)
cat(paste(wellID, well$value1, well$value2, sep=","), file=outputFile)
}
在我的程序世界中,我会做类似的事情:
for (row in dataFrame) {
#look up stuff using data from the row
#write stuff to the file
}
执行此操作的“R 方式”是什么?
【问题讨论】:
-
您的问题是什么? data.frame 是一个二维对象,遍历行是一种非常正常的做事方式,因为行通常是每列中“变量”的“观察”集。
-
我最终做的是: for (index in 1:nrow(dataFrame)) { row = dataFrame[index, ]; # 用行 } 做一些对我来说从来都不是很漂亮的事情。
-
getWellID 是调用数据库还是什么?否则,乔纳森可能是对的,您可以将其矢量化。