Pandas:如何添加带有行号的新列


有两种方法可以将包含行号的新列添加到 pandas DataFrame:

方法一:使用assign()

 df = df. assign (row_number= range ( len (df)))

方法2:使用reset_index()

 df[' row_number '] = df. reset_index (). index

两种方法产生相同的结果。

以下示例展示了如何在实践中使用以下 pandas DataFrame 的每种方法:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   ' points ': [5, 17, 7, 19, 12, 13, 9, 24],
                   ' assists ': [4, 7, 7, 6, 8, 7, 10, 11]})

#view DataFrame
print (df)

  team points assists
0 to 5 4
1 B 17 7
2 C 7 7
3 D 19 6
4 E 12 8
5 F 13 7
6 G 9 10
7:24 a.m. 11

示例1:使用assign()添加行号列

以下代码演示了如何使用allocate()函数添加一个名为row_number的新列,该列显示 DataFrame 中每行的行号:

 #add column that contains row numbers
df = df. assign (row_number= range ( len (df)))

#view updated DataFrame
print (df)

  team points assists row_number
0 to 5 4 0
1 B 17 7 1
2 C 7 7 2
3 D 19 6 3
4 E 12 8 4
5 F 13 7 5
6 G 9 10 6
7:24 11 7

请注意, row_number列中的值范围为 0 到 7。

示例2:使用reset_index()添加行号列

以下代码展示了如何使用reset_index()函数添加一个名为row_number的新列,该列显示DataFrame中每行的行号:

 #add column that contains row numbers
df[' row_number '] = df. reset_index (). index

#view updated DataFrame
print (df)

  team points assists row_number
0 to 5 4 0
1 B 17 7 1
2 C 7 7 2
3 D 19 6 3
4 E 12 8 4
5 F 13 7 5
6 G 9 10 6
7:24 11 7

请注意, row_number列中的值范围为 0 到 7。

这与前面示例的结果相匹配。

其他资源

以下教程解释了如何在 pandas 中执行其他常见任务:

Pandas:如何找到两列之间的差异
Pandas:如何找到两条线之间的差异
Pandas:如何减去两列

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注