j'avoir des données dans l'onglet format délimité qui ressemble à:Trancher caractères spécifiques au format CSV en utilisant python
0/0:23:-1.03,-7.94,-83.75:69.15 0/1:34:-1.01,-11.24,-127.51:99.00 0/0:74:-1.02,-23.28,-301.81:99.00
Je ne suis intéressé par les 3 premiers caractères de chaque entrée (c.-à-et 0/1 0/0) . J'ai pensé que la meilleure façon de le faire serait d'utiliser match
et le genfromtxt
en numpy. Cet exemple est aussi loin que je l'ai obtenu:
import re
csvfile = 'home/python/batch1.hg19.table'
from numpy import genfromtxt
data = genfromtxt(csvfile, delimiter="\t", dtype=None)
for i in data[1]:
m = re.match('[0-9]/[0-9]', i)
if m:
print m.group(0),
else:
print "NA",
Cela fonctionne pour la première ligne des données qui, mais je vais avoir du mal à comprendre comment le développer pour chaque ligne du fichier d'entrée.
Devrais-je en faire une fonction et l'appliquer à chaque rangée séparément ou y a-t-il une façon plus pythonique de le faire?
Toutes ces réponses étaient excellentes, mais vous obtenez le contrôle pour le nombre de modifications et de révisions à votre réponse originale. Merci! – Stedy