循環我有一個大的數據幀像這樣(只顯示前三個欄)dataframes:合併是輸出從用於R中
數據框被稱爲chr22_hap12
2 1 3
2 1 3
2 1 3
2 1 2
2 2 1
2 2 1
我想獲得每個數字的比例(每一列的數目,二進制和三進制數),並將其存儲在一個數據幀中。
這是我到目前爲止有:
for (i in 1:3) {
length(chr22_hap12[,i]) -> total_snps
sum(chr22_hap12[,i]==1,na.rm=FALSE) -> counts_ancestry_1
sum(chr22_hap12[,i]==2,na.rm=FALSE) -> counts_ancestry_2
sum(chr22_hap12[,i]==3,na.rm=FALSE) -> counts_ancestry_3
(counts_ancestry_1*100)/total_snps -> ancestry_1_perc
(counts_ancestry_2*100)/total_snps -> ancestry_2_perc
(counts_ancestry_3*100)/total_snps -> ancestry_3_perc
haplo_df[i] = NULL
haplo_df[i] = c(ancestry_1_perc,ancestry_2_perc,ancestry_3_perc)
as.data.frame(haplo_df[i])
}
我得到這些錯誤回報:目的:試圖設置haplo_df [我] = NULL
錯誤haplo_df [我] = NULL後'haplo_df' 未找到
和後
haplo_df [I] = C(ancestry_1 _perc,ancestry_2_perc,ancestry_3_perc)
與as.data.frame錯誤haplo_df [I] = C(ancestry_1_perc,ancestry_2_perc, ancestry_3_perc): 'haplo_df' 未找到
並再次對象( haplo_df [1])
對象haplo_df'未找到
我的願望輸出應該麗柯本:
0.00 66.66 50.0
100.00 33.33 33.33
0.00 0.00 16.66
均田的一個簡單的錯誤 - 在這個循環中,'haplo_df'被設置爲NULL。所以唯一一次它的結果不會被刪除的是最後一個循環(當'i = 3'時) – 2014-10-07 15:23:18