首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在使用groupby时,如何显示pandas dataframe的行号?

在使用 groupby 对 Pandas DataFrame 进行分组时,默认情况下不会显示行号。如果你想在分组后仍然能够看到每行的原始索引(行号),可以使用 reset_index 方法来重置索引,这样原来的索引就会被转换为 DataFrame 中的一列。

以下是一个简单的例子:

代码语言:txt
复制
import pandas as pd

# 创建一个示例 DataFrame
data = {
    'A': ['foo', 'bar', 'foo', 'bar', 'foo', 'bar', 'foo', 'foo'],
    'B': ['one', 'one', 'two', 'three', 'two', 'two', 'one', 'three'],
    'C': [10, 20, 30, 40, 50, 60, 70, 80],
    'D': [1, 2, 3, 4, 5, 6, 7, 8]
}

df = pd.DataFrame(data)

# 使用 groupby 对列 'A' 进行分组,并计算每组的平均值
grouped = df.groupby('A').mean()

# 重置索引以显示原始的行号
grouped_with_index = grouped.reset_index()

print(grouped_with_index)

输出将会是:

代码语言:txt
复制
     A         C         D
0  bar  40.000000  4.000000
1  foo  42.500000  4.250000

在这个例子中,reset_index 方法将分组后的 DataFrame 的索引重置,原来的索引(行号)变成了 'A' 列旁边的新列。

如果你想要保留原始的行号作为一列,而不是作为索引,可以在 reset_index 方法中设置 drop=False 参数:

代码语言:txt
复制
grouped_with_original_index = df.groupby('A').mean().reset_index(drop=False)

print(grouped_with_original_index)

这样,原始的行号就会作为一个名为 'index' 的列保留在结果 DataFrame 中。

参考链接:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 其实你就学不会 Python

    标题党一下,Python 程序员成千上万,当然有很多人学得会。这里说的“你”,是指职场中的非专业人员。 职场人员一般会用 Excel 处理数据,但也会有很多无助的情况,比如复杂计算、重复计算、自动处理等,再遇上个死机没保存,也常常能把人整得崩溃。如果学会了程序语言,这些问题就都不是事了。那么,该学什么呢? 无数培训机构和网上资料都会告诉我们:Python! Python 代码看起来很简单,只要几行就能解决许多麻烦的 Excel 问题,看起来真不错。 但真是如此吗?作为非专业人员,真能用 Python 来协助我们工作吗? 嘿嘿,只是看上去很美! 事实上,Python 并不合适职场人员,因为它太难了,作为职场非专业人员的你就学不会,甚至,Python 的难度可能会大到让你连 Python 为什么会难到学不会的道理都理解不了的地步。

    01
    领券