Hen*_*ark 5 for-loop r dataframe
我有一个数据框AData,我已经提取了其列名的某个子集,如SpecialNames.我想知道如何在for循环中引用这些列.
我当前的代码如下所示:
SpecialNames <- setdiff(colnames(AData), colnames(BData))
for ( i in SpecialNames ) {
    AData$i <- NULL # Do something to AData$i such as delete it or something else
}
唉,AData $ i似乎没有引用名为i的数据帧AData列.是否有不同的语法可以给我这个?
我在这篇文章阅读在这里说:"在$是交互式的使用相反,在编程时,即,当被解释的列名,你需要使用[或[,所以我更换样品$ i.imp与样本[[paste0(i,'.impt')]]".
根据这个评论,我猜测也许我一直在寻找的语法是AData $ [i]或AData $ [[i]]或AData $ [[paste0(i)]]但这些似乎都不起作用.
有任何想法吗?
您不需要for循环,可以直接访问列。这是一个例子:
Adata <- data.frame(a=rnorm(5), b=rnorm(5), c=rnorm(5))
SpecialNames <- c("b", "c")
Adata[,SpecialNames] <- NA
给你:
            a  b  c
1 -0.95619055 NA NA
2 -0.20250939 NA NA
3 -1.06609997 NA NA
4  0.06337307 NA NA
5  0.77234892 NA NA
您确定要使用吗NULL?NA通常用于缺失值,请参见此处。
| 归档时间: | 
 | 
| 查看次数: | 12535 次 | 
| 最近记录: |