在Pandas中向现有DataFrame添加新列
Pandas是一种快速、强大、灵活且易于使用的数据分析库,是Python中进行数据分析的重要工具之一。本文将介绍如何在Pandas中向现有DataFrame添加新列。我们将通过直观的代码示例帮助读者理解这个过程。
更多Pandas相关文章,请阅读:Pandas 教程
在现有DataFrame中添加单个列
我们可以通过创建一个新的列并在赋值时附加到第一个DataFrame来添加新的列。例如,我们可以从一个空的Series开始,并将它插入到DataFrame:
import pandas as pd
#创建DataFrame
data = {'语文': [80, 90, 70], '数学': [90, 70, 80]}
df = pd.DataFrame(data)
#创建新列
new_column = pd.Series([100, 80, 90])
#添加新列到DataFrame
df['英语'] = new_column
print(df)
输出:
语文 数学 英语
0 80 90 100
1 90 70 80
2 70 80 90
我们可以看到,我们成功地向DataFrame添加了一列新数据,并将其命名为“英语”。
另一种添加新列的方法是在赋值时使用字典。我们只需指定新列的名称和数据,DataFrame就会自动创建新列:
import pandas as pd
#创建DataFrame
data = {'语文': [80, 90, 70], '数学': [90, 70, 80]}
df = pd.DataFrame(data)
#添加新列到DataFrame(字典方式)
df['英语'] = [100, 80, 90]
print(df)
输出:
语文 数学 英语
0 80 90 100
1 90 70 80
2 70 80 90
在现有DataFrame中添加多个列
我们可以使用“assign”函数向现有的DataFrame添加多个列。我们只需要指定每个新列的名称和数据即可。例如:
import pandas as pd
#创建DataFrame
data = {'语文': [80, 90, 70], '数学': [90, 70, 80]}
df = pd.DataFrame(data)
#添加多个新列到DataFrame
df = df.assign(英语=[100, 80, 90], 物理=[70, 60, 80])
print(df)
输出:
语文 数学 英语 物理
0 80 90 100 70
1 90 70 80 60
2 70 80 90 80
我们可以看到,我们成功向DataFrame添加了两列新数据,分别命名为“英语”和“物理”。
向现有列添加数据
我们可以使用“loc”函数向现有列添加数据。我们只需要指定每个新数据的索引和值即可。例如:
import pandas as pd
#创建DataFrame
data = {'语文': [80, 90, 70], '数学': [90, 70, 80]}
df = pd.DataFrame(data)
#向现有的列添加数据
df.loc[0, '语文'] = 95
print(df)
输出:
语文 数学
0 95 90
1 90 70
2 70 80
我们可以看到,我们成功向第一个列添加了新数据。
结论
在Pandas中向现有DataFrame添加新列是一项很容易实现的任务。我们可以使用多种不同的方法来添加新列,每种方法都适用于不同的情况。在添加新列时,我们需要确定新列的名称和数据,并将它们传递给DataFrame对象。我们希望本文能够帮助读者更好地理解如何在Pandas中操作数据。