
Prezados, Alguém poderia me ajudar a selecionar um dataframe, para este caso o nome é list que corresponde à Lista de SNP's selecionados, a partir de de outro dataframe, que para este caso corresponde ao gen1 ( sem precisar indicar a posição das colunas )? Utilizei a rotina especificada abaixo, mas o comando não me disponibiliza a seleção de todas as 22894 colunas, ou seja, de todos os SNP's. Existem 7 deles que não conseguem ser selecionados por serem declarados como falsos. Alguém poderia me ajudar ? Desde já agradeço. Att, Giselle ROTINA:#1)Lendo arquivo genotiposgen=read.table("matriz_genotipos.txt",h=T)#lendo arquivo genotiposdim(gen)#90 x 24165. Tem que colocar o nome dos cruzamentos na primerira colunahead(gen) #2)Gerando o arquivo com o nome dos SNP's selecionadosnomes<- read.table("D_F_nomes.txt",h=F, sep=",",row.names=1,quote="")dim(nomes)#90 x 0 #3)Arquivo de genótipos com os indivíduos nas linhas e com todos SNP's nas colunasgen1<-cbind(nomes,gen)head(gen1)#juntou !dim(gen1)#90 x 24165 #4)Lendo o arquivo de frequência alélicafreq=read.table("chr1_alefreq.txt",h=T) #lendo arquivo freq aleldim(freq)#22894 x 4head(freq) #5) Gerando o arquivo com os SNP's selecionados pela MAFlista_SNP_sel<- freq$nun_snp_freqhead(lista_SNP_sel)#Está como fatorlist<-as.character(lista_SNP_sel)head(list)length(list)dim(gen1) #6)Verificando se os SNP's selecionados são realmente os 22894 selecionados pela MAFtable(list%in%colnames(gen1)) #SURPRESA:Existem 7 SNP's lidos como falsos e por isso não completam os 22894 !logico<-colnames(gen1)%in%listhead(logico)head(gen1)head(list)gen2<- gen1[,logico]head(gen2)dim(gen2)#90 x 22887 ( Existem 7 snps que estão sendo declarados como falsos, por que ?)