2017-01-27 1 views
2

J'analyse des données de séquence ADN/protéine avec python et j'ai un problème. Voici la table de la séquence d'ADN.résumer le chevauchement avec python

enter image description here

Je veux les analyser comme les deux groupe1 et groupe2. Par exemple, AAATTT_TTTCCC ou GGGCCC_GGAAA sont des paires. Ces données de séquence montrent parfois la même séquence. Par exemple, AAATTT est apparu trois fois et AGTC deux fois. Je veux compter cette séquence de chevauchement et résumer comme ci-dessous. Je me demande si je devrais utiliser des pandas, mais je ne sais pas comment faire. Si quelqu'un pouvait aider cela, je serais très reconnaissant avec cela.

enter image description here

+1

Donc, vous voulez juste compter le nombre de fois que chaque valeur Groupe1 unique, apparaît? Pourquoi Group2 est-il une colonne dans votre tableau récapitulatif? – sundance

+0

Oh, je veux aussi la séquence group2 si la séquence Group1 est la même! –

Répondre

1

Pour compter le nombre d'apparitions de chaque valeur unique dans une colonne:

# import pandas 
import pandas as pd 

# load data into Pandas dataframe 
df = pd.read_csv("data.csv") 

# get counts for each unique Group1 value 
df["Group1"].value_counts() 
+0

Cela a fonctionné! Je vous remercie!! –

+0

Savez-vous également comment montrer Group2 comme je l'ai mentionné ci-dessus? –

+0

Ce one-liner devrait le faire: 'df.sort_values ​​(" Group1 ") [[" Group1 "," Group2 "]]. Join (df [" Groupe1 "]. Value_counts(). To_frame (" Group1 Count ") , on = "Group1") ' – sundance