0
说,我有一个数据框,我需要对其单元格做些事情,并记住我已更改的单元格。一种方法是通过两个for-loop循环索引。但是有没有办法用一个循环来做到这一点?R:在通过df元素循环时获取索引名称
完美,我需要这样的:
changes = data.frame(Row = character(), Col = character())
for (cell in df){
if (!(is.na(df))){
cell = do.smt(cell)
temp = list(Row = get.row(cell), Col = get.col(cell))
changes = rbind(changes,temp)
}
}
例的什么,我需要:
df = data.frame(A = c(1,2,3), B = c(4,5,6), C = c(7,8,9))
rownames(df) = c('a','b','c')
changes = data.frame(Row = NA, Col = NA)
for (i in rownames(df)){
for (j in colnames(df)) {
if (df[i,j] > 5) {
df[i,j] = 0
temp = list(Row = i, Col = j)
changes = rbind(changes, temp)
}
}
}
也许与最终的DF比较初始DF。如果您的df是数字,则减去两者并检查哪些条目不等于0.您应该给我们提供您的数据样本。什么是smt? – Ansjovis86
请给出一个有意义的最小工作示例和预期结果。我怀疑这可以在1行代码中解决(使用向量化方法)。 –
@RomanLuštrik添加了示例 – lotrus28