Ich habe Pandas DataFrame, über den ich iteriere, um Werte aus zwei Spalten zu erhalten (
und col_2). Die zweite Spalte enthält Listen. Was ich tun muss, ist für jeden Wert in col_1 eine Liste der Werte in col_2 abzurufen und den Wert von col_1 in die Liste der col_2-Werte einzufügen.So habe ich es gemacht:
Code: Select all
import pandas as pd
dict_for_df = {
"col_1": ["A", "B", "C"],
"col_2": [["D", "E"], ["F", "H"], ["I", "J"]],
}
df = pd.DataFrame(dict_for_df)
for i in range(df.shape[0]):
col_1_value = df["col_1"][i]
col_2_list = df["col_2"][i]
col_2_list.insert(0, col_1_value)
Der Einfügevorgang für col_2_list ändert jedoch auch die ursprüngliche df. Wie kann man es vermeiden?
Code: Select all
col_1 col_2
0 A [A, D, E]
1 B [B, F, H]
2 C [C, I, J]
Ich möchte in Zukunft Werte in col_2_list verwenden, deshalb möchte ich sie als separate Variable behalten, ohne den ursprünglichen DataFrame zu ändern.