📜  将零列添加到 Pandas Dataframe(1)

📅  最后修改于: 2023-12-03 14:53:55.627000             🧑  作者: Mango

将零列添加到 Pandas Dataframe

在绝大多数情况下,我们加载数据到 Pandas Dataframe 中时,可能需要创建一些特定的列来存储数据,但这些列并非缺失数据,而是值为零。在这种情况下,将零列添加到 Pandas Dataframe 是必要的。

创建带有零列的 Pandas Dataframe

首先,我们来看一个简单的例子,我们将创建一个名为“df”的 Pandas Dataframe,其中包含三列:“a”,“b”和“c”,其中列“a”和“b”的值为随机生成的数字,列“c”的值为零。

import pandas as pd
import numpy as np

# 创建带有随机列和零列的 Pandas Dataframe
df = pd.DataFrame({
    'a': np.random.rand(5),
    'b': np.random.rand(5),
    'c': np.zeros(5)
})

print(df)

这将生成以下输出:

          a         b    c
0  0.212256  0.382891  0.0
1  0.012366  0.968426  0.0
2  0.730634  0.235573  0.0
3  0.416494  0.635031  0.0
4  0.871044  0.119699  0.0

如上所述,我们使用了np.zeros()函数来创建一个长度为5的零数组,并将其作为“c”列的值传递给pd.DataFrame()中。

将零列添加到现有的 Pandas Dataframe

在有些情况下,我们可能需要将零列添加到一个已经存在的 Pandas Dataframe 中,这就需要使用df['新列名'] = 0来添加零列。

# 创建带有两个随机列的 Pandas Dataframe
df = pd.DataFrame({
    'a': np.random.rand(5),
    'b': np.random.rand(5)
})

# 添加零列 "c"
df['c'] = 0

print(df)

这将生成以下输出:

          a         b  c
0  0.054479  0.018671  0
1  0.868448  0.508827  0
2  0.727615  0.959795  0
3  0.248399  0.158545  0
4  0.693593  0.774985  0

如上所述,我们只需在现有的 Panda Dataframe 中使用df['新列名'] = 0即可添加一个初始值为零的新列。

除此之外,我们还可以使用df.insert()方法将零列插入到指定位置。

# 指定位置插入零列 "d" 在"b"列后面
df.insert(2, "d", 0)

print(df)

这将生成以下输出:

          a         b  d  c
0  0.583176  0.648934  0  0
1  0.434905  0.536313  0  0
2  0.041917  0.823292  0  0
3  0.923671  0.569464  0  0
4  0.311816  0.126570  0  0

如上所述,我们使用了df.insert()方法,它需要三个参数:要插入的位置、新列的名称和新列的值。在本例中,我们将“d”列插入到“b”列后面,其值为零。

结论

在本文中,我们介绍了如何将零列添加到 Pandas Dataframe 中。我们还学习了在现有的 Pandas Dataframe 中添加零列的方法,并使用了df.insert()方法将零列插入到指定位置。这些技巧将帮助你更好地管理 Pandas Dataframe 中的数据,使你的数据分析更加轻松愉快。