Pandas DataFrame.assign(~)
方法將新列附加到 DataFrame。
參數
1.kwargs
| key:label
和 value:function or array-like
該鍵用作新的列標簽。
值類型 |
說明 |
---|---|
該函數接受源 DataFrame 作為唯一參數,並返回一個 Series。 | |
保存要追加的列的值的標量、係列或數組。 |
我們一次可以追加的列數沒有限製。
注意
您可以引用在同一調用中附加的先前列。檢查下麵的示例以進行說明。
返回值
附加了新列的新DataFrame
。
例子
考慮以下 DataFrame :
df = pd.DataFrame({"A":[3,4], "B":[5,6]})
df
A B
0 3 5
1 4 6
使用函數
要附加新列 C
,它是列 A
和 B
的總和:
df.assign(C=lambda my_df: my_df["A"] + my_df["B"])
A B C
0 3 5 8
1 4 6 10
使用標量
要附加一個值為單個常量的新列:
df.assign(C=20)
A B C
0 3 5 20
1 4 6 20
為了供您參考,我們再次在此處顯示相同的df
:
df
A B
0 3 5
1 4 6
使用數組
要使用數組附加新列:
df.assign(C=[7,8])
A B C
0 3 5 7
1 4 6 8
添加多列
要在one-go中添加多個列:
df.assign(C=lambda p_df: p_df["A"] + p_df["B"], D=lambda p_df: p_df["C"] + 5)
A B C D
0 3 5 8 13
1 4 6 10 15
請注意如何使用列 C
構造列 D
,該列也出現在函數調用中。
覆蓋現有列
考慮與之前相同的DataFrame:
df
A B
0 3 5
1 4 6
如果您要附加的列的標簽與現有列的標簽衝突,則會發生覆蓋:
df.assign(A=[8,9])
A B
0 8 5
1 9 6
相關用法
- Python Pandas DataFrame asfreq方法用法及代碼示例
- Python Pandas DataFrame asof方法用法及代碼示例
- Python Pandas DataFrame astype方法用法及代碼示例
- Python Pandas DataFrame agg方法用法及代碼示例
- Python Pandas DataFrame all方法用法及代碼示例
- Python Pandas DataFrame add方法用法及代碼示例
- Python Pandas DataFrame any方法用法及代碼示例
- Python PySpark DataFrame alias方法用法及代碼示例
- Python Pandas DataFrame append方法用法及代碼示例
- Python Pandas DataFrame add_prefix方法用法及代碼示例
- Python Pandas DataFrame add_suffix方法用法及代碼示例
- Python Pandas DataFrame at屬性用法及代碼示例
- Python Pandas DataFrame axes屬性用法及代碼示例
- Python Pandas DataFrame align方法用法及代碼示例
- Python Pandas DataFrame apply方法用法及代碼示例
- Python Pandas DataFrame applymap方法用法及代碼示例
- Python Pandas DataFrame at_time方法用法及代碼示例
- Python Pandas DataFrame abs方法用法及代碼示例
- Python Pandas DataFrame empty屬性用法及代碼示例
- Python Pandas DataFrame pop方法用法及代碼示例
- Python Pandas DataFrame nsmallest方法用法及代碼示例
- Python Pandas DataFrame sample方法用法及代碼示例
- Python Pandas DataFrame items方法用法及代碼示例
- Python Pandas DataFrame max方法用法及代碼示例
- Python Pandas DataFrame swaplevel方法用法及代碼示例
注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 Pandas DataFrame | assign method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。