python - 分组数据帧上的列名输出到 CSV

标签 python csv pandas

我有一个来自大型问卷的 dataFrame,我通过聚合不同轴上的数据来生成摘要:

df.groupby(group_name).agg([np.mean, np.std, np.count_nonzero])

这会生成一列,其中包含我调查问卷中每个问题的均值、标准差和计数。分组的dataFrame中每一列的名称是一个元组(original_column_name, function_applied)

问题是,当我输出到 CSV(使用 to_csv())时,列名作为元组输出,即 ('gender', 'mean'), ('gender ', 'std') 理想情况下我想要像 gender_mean & gender_std

这样的东西

如何在输出到 CSV 之前处理这些列名?

最佳答案

在 pandas 0.8.1 中,试试这个:

group_df = df.groupby(group_name).agg([np.mean, np.std, np.count_nonzero])
group_df.rename(None, lambda coltuple: '_'.join(coltuple), False, True)

参见 the DataFrame documentation了解更多详情。

关于python - 分组数据帧上的列名输出到 CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12100396/

相关文章:

python - 从 DictReader 写入 CSV 时出错

csv - 根据Rust中的文件名读取CSV或压缩CSV

python - 当涉及无穷大值时, Pandas 滚动返回 NaN

c# - 在 Mono Linux 上使用 SerialPort 时出现高波特率错误

python - 以编程方式在 dockerized apache Airflow python 操作符内创建 SSH 隧道

python - 星号 `*` 在 Python 3 的字符串格式化方法 `.format(*) ` 中如何工作?

r - 自定义名称从数据表包 R 下载 csv

python - OpenCV 估计 Affine3D 失败并显示神秘的错误消息

python - 如何在 python 中创建堆积线图?

python - 如何在 Python 和 Pandas 中使用 for 循环创建多个过滤数据框?