【发布时间】:2018-01-31 15:57:15
【问题描述】:
我编写了一个用户定义的函数,它应该获取一个数据集和一些符号,扫描整个数据集并用缺失值替换这个数字的所有实例。代码工作得很好,直到我把它放在一个用户定义的函数中(循环和条件工作)。我不知道为什么它现在不起作用。没有警告或错误,它只是不起作用。另外想问一下有没有办法选择在哪些列上做这个操作?
我的代码是:
repMissing = function(ds,x)
{
for(i in 1:nrow(ds))
{
for(j in 1:ncol(ds))
{
if (!is.na(ds[i,j]) && ds[i,j] == x)
{
ds[i,j] = NA
}
}
}
}
我运行了以下代码:
repMissing(diet2,-99)
由于某种原因,-99 仍然不是 NA。
任何建议将不胜感激。谢谢!
编辑:这个问题与之前的问题不同,因为我不仅要问如何执行任务,还要问我的代码出了什么问题,这与之前的问题不同。
【问题讨论】:
标签: r function for-loop if-statement