在pandas DataFrame中添加一行
pandas是Python中最流行的数据分析库之一,尤其适用于处理表格数据。通过pandas的DataFrame对象,我们可以轻松对数据进行分析、处理和可视化。
但有时候,我们需要在DataFrame中添加一行数据。本文将向你展示如何在pandas DataFrame中添加一行。
更多Pandas相关文章,请阅读:Pandas 教程
创建 DataFrame
首先,我们需要创建一个DataFrame对象。下面的示例代码创建了包含三列数据的DataFrame,每列数据类型分别是字符串、整数和浮点数。代码中的字符串数组、整数数组和浮点数数组都是等长的,它们将被转换为DataFrame的三列数据。
import pandas as pd
data = {'name':['Tom', 'Jerry', 'Mike'], 'age':[30, 40, 25], 'score':[80.0, 75.5, 90.3]}
df = pd.DataFrame(data)
print(df)
输出结果如下:
name age score
0 Tom 30 80.0
1 Jerry 40 75.5
2 Mike 25 90.3
添加一行数据
要向pandas DataFrame中添加一行,我们可以使用append函数。以下示例代码中,我们首先创建了一个字典对象new_data
,其中包含新行的数据;然后使用append
函数将其添加到DataFrame末尾,并指定ignore_index=True
参数,以确保行索引的唯一性。
new_data = {'name':'Lily', 'age':28, 'score':86.2}
df = df.append(new_data, ignore_index=True)
print(df)
输出结果如下:
name age score
0 Tom 30 80.0
1 Jerry 40 75.5
2 Mike 25 90.3
3 Lily 28 86.2
上述代码中的new_data
是字典对象,键代表DataFrame的列名,值即为所添加的数据。在append
函数中,我们设置了ignore_index=True
参数,以忽略原有的行索引并创建一个新的整数索引。
添加多行数据
如果我们需要添加多行数据,可以将它们存储在列表中,并使用append
函数一次性添加。以下示例代码演示了如何添加两行新数据:
new_data = [{'name':'Lily', 'age':28, 'score':86.2}, {'name':'Lucy', 'age':35, 'score':92.5}]
df = df.append(new_data, ignore_index=True)
print(df)
输出结果如下:
name age score
0 Tom 30 80.0
1 Jerry 40 75.5
2 Mike 25 90.3
3 Lily 28 86.2
4 Lucy 35 92.5
添加一个空行
如果我们只想添加一个空行,可以创建一个空字典对象,并使用append
函数将其添加到DataFrame末尾。
new_data = {}
df = df.append(new_data, ignore_index=True)
print(df)
输出结果如下:
name age score
0 Tom 30.0 80.0
1 Jerry 40.0 75.5
2 Mike 25.0 90.3
3 Lily 28.0 86.2
4 Lucy 35.0 92.5
5 NaN NaN NaN
上述代码中的空字典在添加后,创建了一个全为NaN值的空行。这是由于字典没有包含DataFrame的列名,pandas因此无法填充这行数据。要使这行数据有意义,我们需要使用适当的值填充它。例如,以下代码在空字典中指定了三个值,每个值对应DataFrame的一个列。
new_data = {'name':'Kate', 'age':32, 'score':78.0}
df = df.append(new_data, ignore_index=True)
print(df)
输出结果如下:
name age score
0 Tom 30.0 80.0
1 Jerry 40.0 75.5
2 Mike 25.0 90.3
3 Lily 28.0 86.2
4 Lucy 35.0 92.5
5 NaN NaN NaN
6 Kate 32.0 78.0
现在,空行被填充为Kate
、32
和78.0
。这就是我们如何在pandas DataFrame中添加一行数据的方法。
结论
通过上述示例代码,我们学习了如何在pandas DataFrame中添加一行数据。我们可以将一行或多行数据存储在字典或列表中,并使用append
函数将其添加到DataFrame末尾。如果只需要添加一个空行,创建一个空字典就可以实现。