2016-11-27 8 views
1

Ich habe eine Liste von Datenrahmen und ich möchte eine neue Liste von Datenrahmen erstellen, die identisch ist mit dem vorherigen, aber mit einer zusätzlichen Spalte mit einem funktionalen Ansatz.Pandas Datenrahmen mit zusätzlichen Spalten zurückgeben

Hier ist mein Denken und was ich habe versucht:

# I know this is possible. It will add a new column of True. 
df['new_column'] = True 

# However, it edits the dataframe, I want a functional approach that returns a new modified dataframe. 
# Something like this. 
df + ('new_column', True) 

# Then I can use it in list comprehension. consider dfs is a list of dataframes. 
[df + ('new_column', True) for df in dfs] 

Antwort

2

Verwenden Sie die assign() Methode :

[df.assign(new_column = True) for df in dfs] 
+0

Genau das, was ich suchte, danke. – Israelg99

1

Sie .assign() Methode können neuen Datenrahmen mit extra Spalte in einer funktionalen Weise erstellen:

[df.assign(new_column = lambda _: True) for df in dfs] 
Verwandte Themen