2017-04-14 3 views
1

Ich habe die folgende Matrix:Liste der Kombinationen und ihre Zählwerte aus einem Matrixdatenrahmen extrahieren?

import pandas as pd 

df_test = pd.DataFrame({'TFD' : ['AA', 'SL', 'BB', 'D0', 'Dk', 'FF'], 
        'Snack' : ['1', '0', '1', '1', '0', '0'], 
        'Trans' : ['1', '1', '1', '0', '0', '1'], 
        'Dop' : ['1', '0', '1', '0', '1', '1']}).set_index('TFD') 
df_test = df_test.astype(int) 
matrix = df_test.T.dot(df_test) 
print matrix 
=>>> 
      Dop Snack Trans 
    Dop  4  2  3 
    Snack 2  3  2 
    Trans 3  2  4 

Was würde ich liefern will:

Dop-Snack  2  
Snack-Trans 2  
Trans-Dop  3  

Vielen Dank im Voraus!

Antwort

2

Vorausgesetzt, es gibt keine besonderen Anforderungen in Bezug auf die Reihenfolge der Paare:

import itertools 
for c, r in itertools.combinations(matrix.columns, 2): 
    print("{}-{}\t{}".format(c, r, matrix.loc[c, r])) 

# Dop-Snack  2 
# Dop-Trans  3 
# Snack-Trans 2 

https://docs.python.org/2/library/itertools.html#itertools.combinations

+0

Sie k mit r vertippt, aber ich habe es, vielen Dank bro: D –

+0

Es stimmt, shouldn Bearbeiten Sie nicht zu viel an Ort und Stelle. Bitte schön ;) – mhoff

Verwandte Themen