簡體   English   中英

將數據框列作為參數傳遞給R?

[英]Passing data frame column as an argument in R?

我有一個帶有一堆列的數據框:

> names(mh)
 [1] "subj" "cond" "tpxx_150_brod_atl_comp_features.nii"
 [4] "tpxx_150_brod_atl_ant_features.nii" "tpxx_150_l_atl_features.nii" "tpxx_150_b38_features.nii"              
 [7] "tpxx_150_frontal_features.nii" "tpxx_150_fronto_temporal_features.nii" "tpxx_150_inf_frontal_gyrus_features.nii" 
 [10] "tpxx_150_inf_temporal_gyrus_features.nii" "tpxx_150_temporal_features.nii"

我需要為這些列生成圖表。 這是一個這樣的:

qplot(tpxx_150_temporal_features.nii, main="tpxx_150_temporal_features.nii", facets=cond ~ ., geom="histogram", binwidth=.01, xlim=c(.4,.9), ylab="pct", fill=subj, data=mh)

我需要一遍又一遍地執行此操作,因此我想使其自動化:

for (colName in names(mh)[3:11]) { 
     print(qplot(colName, main=colName, facets=cond ~ ., geom="histogram", binwidth=.01, xlim=c(.4,.9), ylab="pct", fill=subj, data=mh)) 
}

除了那行不通。 我將colName設為字符串,而qplot不需要字符串; 而是(就通用編程語言而言)似乎想要某種對數據幀中變量的引用。 但是我不知道如何將一個轉換為另一個,也不知道使用正確的R術語來查找答案。 有人可以幫忙嗎?

mh為您的data.frame。

    for (colName in names(mh)[3:11]) { 
         print(qplot(mh[ , colName], main=colName, facets=cond ~ ., geom="histogram", 
         binwidth=.01, xlim=c(.4,.9), ylab="pct", fill=subj, data=mh)) 
    }

現在,您正在訪問該實際列。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM