Python是進行數據分析的一種出色語言,主要是因為以數據為中心的python軟件包具有奇妙的生態係統。 Pandas是其中的一種,使導入和分析數據更加容易。
Dataframe.assign()方法將新列分配給DataFrame,返回新對象(副本),並將新列添加到原始對象。重新分配的現有列將被覆蓋。
新分配的列的長度必須與 DataFrame 中的行數匹配。
用法: DataFrame.assign(**kwargs)
參數:
kwargs:關鍵字是列名。如果這些值是可調用的,則它們將在DataFrame上計算並分配給新列。可調用對象不得更改輸入DataFrame(盡管 Pandas 不會對其進行檢查)。如果值是不可調用的(例如,Series,標量或數組),則將它們簡單分配。
返回:一個新的DataFrame,其中除了所有現有列之外,還包含新列。
有關在代碼中使用的CSV文件的鏈接,請單擊此處
範例1:分配一個名為Revised_Salary
以原始工資的10%遞增。
# importing pandas as pd
import pandas as pd
# Making data frame from the csv file
df = pd.read_csv("nba.csv")
# Printing the first 10 rows of
# the data frame for visualization
df[:10]
# increase the salary by 10 %
df.assign(Revised_Salary = lambda x:df['Salary']
+ df['Salary']/10)
輸出:
範例2:一次分配多個列
# importing pandas as pd
import pandas as pd
# Making data frame from the csv file
df = pd.read_csv("nba.csv")
# First column ='New_Team', this column
# will append '_GO' at the end of each team name.
# Second column ='Revised_Salary' will increase
# the salary of all employees by 10 %
df.assign(New_team = lambda x:df['Team']+'_GO',
Revised_Salary = lambda x:df['Salary']
+ df['Salary'] / 10)
輸出:
相關用法
- Python pandas.map()用法及代碼示例
- Python Pandas Series.str.len()用法及代碼示例
- Python Pandas.factorize()用法及代碼示例
- Python Pandas TimedeltaIndex.name用法及代碼示例
- Python Pandas dataframe.ne()用法及代碼示例
- Python Pandas Series.between()用法及代碼示例
- Python Pandas DataFrame.where()用法及代碼示例
- Python Pandas Series.add()用法及代碼示例
- Python Pandas.pivot_table()用法及代碼示例
- Python Pandas Series.mod()用法及代碼示例
- Python Pandas Dataframe.at[ ]用法及代碼示例
- Python Pandas Dataframe.iat[ ]用法及代碼示例
- Python Pandas.pivot()用法及代碼示例
- Python Pandas dataframe.mul()用法及代碼示例
- Python Pandas.melt()用法及代碼示例
注:本文由純淨天空篩選整理自Shubham__Ranjan大神的英文原創作品 Python | Pandas dataframe.assign()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。