Ich versuche, die Spalte "Verwandte Mengen" eines Datenrahmens zu erstellen, das mit dem vorhandenen "Element", "Menge" und "zugehörigen Elementen" Spalten angegeben ist. -table-container ">
< /th>
Element < /th>
Menge < /th>
Verwandte Elemente < /th>
Verwandte Mengen < /th>
< /tr> < /thead>
0 < /td>
Blüten < /td>
< td> 1
['büsche']
{'büsche': 2}
1 < /td>
Büsche < /td>
2 < /td>
[ 'Blumen'] < /td>
{'Blumen': 1} < /td>
< /tr>
2 < /td>
cars < /td>
3 < /td>
['Trucks', 'Motorcycles'] < /td>
{'Trucks': 4, 'Motorcycles': 5} < /td>
< /tr>
3 < /td>
Trucks < /td>
4 < /td>
['Cars', 'Motorcycles'] < /td>
{ 'Cars': 3, 'Motorcycles': 5} < /td>
< /tr>
4 < /td>
Motorräder < /td>
5 < /td>
['Cars', 'Trucks'] < /td>
{'Cars': 3 , 'Trucks': 4}
Die Werte in der Wörterbücher werden als Eingabe einer Funktion verwendet, um eine weitere Spalte später zu generieren. Mit welchem ich die Spalte mit iTerrows () und a für Schleife ausfüllen konnte:
Code: Select all
dictionary = {item : df.loc[df['Item'] == item,['Quantity']][idx] for item in related_items_list}
(wobei IDX den entsprechenden Index der einzigen Zeile nach dem Filterung nach 'Element' und verwandt_items_list ist der Wert ist der Wert Aus der Spalte "Verwandte Elemente" der aktuellen Zeile in der Schleife)
, aber ich versuche stattdessen etwas mit df.apply () zu machen in der Hoffnung, dass es leistungsfähiger sein wird. Gibt es eine Möglichkeit, die in Application () auf den gesamten Datenrahmen aufgerufene Funktion anstelle der an sie übergebenen Zeile zugreifen zu können? . Ist der Versuch, Apply () für die Leistung zu verwenden, Zeitverschwendung? Sollte ich nur eine Schleife verwenden, um die "Menge" Daten direkt in die Funktion zu füttern, anstatt diese Spalte überhaupt zu erstellen? Ich mache mir Sorgen, dass dies auch die Leistung verletzen wird
Ich versuche, die Spalte "Verwandte Mengen" eines Datenrahmens zu erstellen, das mit dem vorhandenen "Element", "Menge" und "zugehörigen Elementen" Spalten angegeben ist. -table-container ">
< /th>
Element < /th>
Menge < /th>
Verwandte Elemente < /th>
Verwandte Mengen < /th>
< /tr> < /thead>
0 < /td>
Blüten < /td>
< td> 1
['büsche']
{'büsche': 2}
1 < /td>
Büsche < /td>
2 < /td>
[ 'Blumen'] < /td>
{'Blumen': 1} < /td>
< /tr>
2 < /td>
cars < /td>
3 < /td>
['Trucks', 'Motorcycles'] < /td>
{'Trucks': 4, 'Motorcycles': 5} < /td>
< /tr>
3 < /td>
Trucks < /td>
4 < /td>
['Cars', 'Motorcycles'] < /td>
{ 'Cars': 3, 'Motorcycles': 5} < /td>
< /tr>
4 < /td>
Motorräder < /td>
5 < /td>
['Cars', 'Trucks'] < /td>
{'Cars': 3 , 'Trucks': 4}
Die Werte in der Wörterbücher werden als Eingabe einer Funktion verwendet, um eine weitere Spalte später zu generieren. Mit welchem ich die Spalte mit iTerrows () und a für Schleife ausfüllen konnte:
[code]dictionary = {item : df.loc[df['Item'] == item,['Quantity']][idx] for item in related_items_list}
[/code]
(wobei IDX den entsprechenden Index der einzigen Zeile nach dem Filterung nach 'Element' und verwandt_items_list ist der Wert ist der Wert Aus der Spalte "Verwandte Elemente" der aktuellen Zeile in der Schleife)
, aber ich versuche stattdessen etwas mit df.apply () zu machen in der Hoffnung, dass es leistungsfähiger sein wird. Gibt es eine Möglichkeit, die in Application () auf den gesamten Datenrahmen aufgerufene Funktion anstelle der an sie übergebenen Zeile zugreifen zu können? . Ist der Versuch, Apply () für die Leistung zu verwenden, Zeitverschwendung? Sollte ich nur eine Schleife verwenden, um die "Menge" Daten direkt in die Funktion zu füttern, anstatt diese Spalte überhaupt zu erstellen? Ich mache mir Sorgen, dass dies auch die Leistung verletzen wird