- Ein Datenrahmen mit test_var ODB6_OD_ID, Gene_ID und einigen anderen Spalten.
- Ein Datenrahmen arranged_data mit architecture_number, Details und Sequence. (Sequenzdaten ist nicht relevant)
möchte ich finden Sie heraus, ob arranged_data $ Details irgendeinen Wert von test_var $ ODB6_OD_ID enthält. Das heißt, wenn der String in arranged_data $ Details einen Teilstring enthält, der einer der Werte in test_var $ ODB6_OD_ID ist. Wenn die Sequenz vorhanden ist, hängen Sie die test_var $ Gene_ID der jeweiligen ODB6_OD_ID an eine Datei an.
Ich muss dies für jede architecture_number tun. Es gibt ungefähr 18 Architekturen mit einem Gesamtdatensatz von 5660.
Dies ist der Code, den ich geschrieben habe, aber es dauert zu lange, was ich wegen der großen Schleifen annahm: (Dies ist nur für Architektur 1. I haben für Architekturen von 1 bis 18) (Architektur 1 enthält etwa 350+ Sequenzen)
while (arranged_data$architecture_number==1)
{
if(grepl(arranged_data$V2,test_var$ODB6_OG_ID)==TRUE)
{
write.table(test_var$Gene_ID, file = "architecture1", append = TRUE, sep = '\n')
}
}
Meine Daten-Set aussieht zu tun: test_var:
ODB6_OG_ID start Gene_ID
EOG60024F chrXR_group6 FBgn0247618
EOG60024H chr4_group3 FBgn0070413
EOG60024K chr2 FBgn0078093
EOG60024M chr2 FBgn0243975
EOG60024V chr4_group5 FBgn0247694
EOG60025C chrXL_group1a FBgn0247949
EOG60025F chr3 FBgn0245234
EOG602XCD chr4_group3 FBgn0080574
EOG602XCQ chr4_group3 FBgn0078791
arranged_data enthält:
architecture_number Details
1 chr317678741767875EOG6HQF5814.8092+47
1 chr325176942517695EOG6NKCGX23.1869-87
1 chr391494069149407EOG6NZVDZ2.96183+105
1 chr246642624664263EOG6Z638J1.52323+138
1 chr4_group3231407231408EOG6QRHQP4.65431-721
1 chr311648221164823EOG6X3HNJ2.28484+96
1 chr333466933346694EOG66WZW582.1698+678
1 chrXR_group854636745463675EOG6XH0KP1.86172+57
1 chr283746518374652EOG6V17MG2.45409-68
1 chr31338293913382940EOG63XVQR1.60785+105
Erforderliche Ausgabe: FBgn0247618 FBgn0070413 FBgn0078093 usw.
(Diese sind nicht in Ordnung.)
Weitere Informationen: OS: Ubuntu Xenial Xerus 16.04 R Version: 3.3. 0 RStudio Version: 0.99.902
Bitte geben Sie ein [minimal reproduzierbares Beispiel] an (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example). Außerdem kann das Speichern der Daten in einem Datenrahmen und das anschließende Schreiben auf die Festplatte schneller sein als das Schreiben auf die Festplatte bei jeder Iteration. –