📅  最后修改于: 2023-12-03 15:07:12.544000             🧑  作者: Mango
在数据处理中,有时需要通过对现有列的操作来创建新列。Pandas是一种流行的Python数据分析库,可以轻松地实现这个过程。
要创建新列,可以使用Pandas的assign()函数或直接在DataFrame对象上创建一个新的Series对象。
使用assign()函数可以轻松地创建一个新的DataFrame对象,并在其中添加一个新的列。
import pandas as pd
data = {'Name': ['John', 'Mary', 'Mike', 'Maggie'],
'Age': ['25', '40', '52', '34']}
df = pd.DataFrame(data)
df = df.assign(Gender = ['Male', 'Female', 'Male', 'Female'])
print(df)
输出:
Name Age Gender
0 John 25 Male
1 Mary 40 Female
2 Mike 52 Male
3 Maggie 34 Female
在上述示例中,我们使用assign()函数来添加一个新列'Gender',并为该列赋初始值。然后我们打印整个数据集 DataFrame。
创建一个新的Series对象可以使用DataFrame的[]运算符。例如,如果我们有一个已经存在的DataFrame df,我们可以使用以下代码来创建一个新的列。
df['Gender'] = ['Male', 'Female', 'Male', 'Female']
在这种情况下,我们将新列分配给DataFrame df的'Gender'列。
order()函数用于对数据进行排名。例如,如果我们有一个数值向量并需要输出它的排名,则可以使用order()函数。
import pandas as pd
data = {'Numbers': [10, 20, 30, 40]}
df = pd.DataFrame(data)
df['Rank'] = df['Numbers'].rank()
print(df)
输出:
Numbers Rank
0 10 1.0
1 20 2.0
2 30 3.0
3 40 4.0
在上述示例中,我们将新列分配给DataFrame df的'Rank'列。 该列是从现有列'Numbers'创建的,使用rank()函数生成。
总之,本文介绍了如何通过使用assign()函数或直接创建Series对象来创建新列,并使用order()函数对数据进行排名。 这些技术有助于更好地管理和处理数据。