如何将标题行添加到 Pandas DataFrame

Asad Riaz 2023年1月30日 Pandas Pandas DataFrame
  1. 通过直接在 dataframe 方法中传递标题行来添加标题行
  2. 使用 dataframe.columns 添加标题行
  3. 添加标头而不替换当前标头
  4. 读取 csv 文件时,将 header 行添加到 DataFrame
如何将标题行添加到 Pandas DataFrame

我们将介绍在 pandas 的 dataframe 中添加标题行的方法,以及直接在 dataframe 中传递 names 或通过将列表中的列名直接分配给 dataframe.columns 方法的选项。

我们还将介绍 Pandas 的 DataFrame 添加标头,而不替换当前标头。换句话说,我们将当前标头向下移动,并将其添加到 DataFrame 中作为另一条记录。

我们还将看一下在读取 csv 文件时如何向 pandas.dataframe 添加标题行的例子。

通过直接在 dataframe 方法中传递标题行来添加标题行

我们将使用 columns 参数将 header 直接传递给 DataFrame

考虑以下代码:

# python 3.x
import pandas as pd
import numpy as np

df = pd.DataFrame(data=np.random.randint(0, 10, (6, 4)), columns=["a", "b", "c", "d"])
print(df)

输出:

   a  b  c  d
0  4  4  4  0
1  8  1  2  5
2  3  0  4  3
3  3  7  2  4
4  8  3  1  8
5  6  7  5  9

使用 dataframe.columns 添加标题行

我们还可以使用 dataframe.columns 将标题行添加到 DataFrame 中。

考虑以下代码:

# python 3.x
import pandas as pd
import numpy as np

df = pd.DataFrame(data=np.random.randint(0, 10, (6, 4)))
df.columns = ["a", "b", "c", "d"]
print(df)

输出:

   a  b  c  d
0  5  2  6  7
1  4  5  9  0
2  8  3  0  4
3  6  3  1  1
4  9  3  4  8
5  7  5  0  6

添加标头而不替换当前标头

另一种选择是将标题行添加为列索引的附加级别,以使其成为 MultiIndex。当我们需要为列增加一层信息时,此方法很有用。

考虑以下代码:

# python 3.x
import pandas as pd
import numpy as np

df = pd.DataFrame(data=np.random.randint(0, 10, (6, 4)), columns=["a", "b", "c", "d"])
df.columns = pd.MultiIndex.from_tuples(zip(["A", "B", "C", "D"], df.columns))
print(df)

输出:

   A  B  C  D
   a  b  c  d
0  2  6  4  6
1  5  0  5  1
2  9  6  6  1
3  8  9  7  4
4  6  5  6  6
5  3  9  1  5

读取 csv 文件时,将 header 行添加到 DataFrame

我们可以直接在 read_csv 中使用 names,或者如果文件没有标题,可以显式设置 header = None

考虑以下代码:

# python 3.x
import pandas as pd
import numpy as np

df = pd.Cov = pd.read_csv("path/to/file.csv", sep="\t", names=["a", "b", "c", "d"])
Enjoying our tutorials? Subscribe to DelftStack on YouTube to support us in creating more high-quality video guides. Subscribe

相关文章 - Pandas DataFrame