ich in R wissen kann ich tidyr für folgende Zwecke verwenden:Spalten zu einer Pivot-Tabelle hinzufügen (Pandas)
data_wide <- spread(data_protein, Fraction, Count)
und data_wide alle Spalten von data_protein erben werden, die nicht verbreitet werden.
Protein Peptide Start Fraction Count
1 A 122 F1 1
1 A 122 F2 2
1 B 230 F1 3
1 B 230 F2 4
wird
Protein Peptide Start F1 F2
1 A 122 1 2
1 B 230 3 4
Aber in Pandas (Python),
data_wide = data_prot2.reset_index(drop=True).pivot('Peptide','Fraction','Count').fillna(0)
erbt nichts nicht in der Funktion angegeben (Index, Schlüssel, Wert). So entschied ich es durch df.join() zu verbinden:
data_wide2 = data_wide.join(data_prot2.set_index('Peptide')['Start']).sort_values('Start')
Aber das erzeugt Duplikate der Peptide, weil es mehrere Startwerte sind. Gibt es einen einfacheren Weg, dies zu lösen? Oder ein spezieller Parameter für Join, der Wiederholungen auslässt? Vielen Dank im Voraus.
In welchem Schritt tue ich das? Wann gebe ich an, dass Count der Wert für Fraction ist? – Nico
@Nico, ich habe meine Antwort aktualisiert - bitte überprüfen – MaxU