如何在Pandas中返回带列名的value_counts结果并导出Excel
解决value_counts导出Excel丢失分类列的问题
你的代码问题在于value_counts()返回的是Series类型,其中索引是CARRIER列的不同取值,值是对应计数。当使用to_excel(index=False)时,会直接丢弃索引,导致导出的Excel只有计数列,没有分类名称列。
修正后的代码
import pandas as pd df = pd.read_excel('Carriers.xlsx') # 将统计结果转为DataFrame,重置索引并自定义列名 df1 = df['CARRIER'].value_counts().reset_index() df1.columns = ['CARRIER', 'COUNT'] # 第一个列名对应原分类列,第二个对应统计值列 # 导出时去掉默认行索引,保留分类列和统计列 df1.to_excel('value_counts.xlsx', index=False)
说明
reset_index():把Series的索引转换为DataFrame的第一列,同时生成默认的行索引df1.columns = [...]:给DataFrame设置明确的列名,确保导出的Excel表头清晰- 此时使用
index=False只会去掉默认的行索引(0、1、2...),不会丢失我们需要的分类列
内容的提问来源于stack exchange,提问作者syed
相关产品推荐
相关产品推荐

