登录
首页 >  文章 >  python教程

如何将数据框中的“类型”列转换为多列并统计每天的数据?

时间:2025-03-23 16:36:11 283浏览 收藏

本篇文章主要是结合我之前面试的各种经历和实战开发中遇到的问题解决经验整理的,希望这篇《如何将数据框中的“类型”列转换为多列并统计每天的数据?》对你有很大帮助!欢迎收藏,分享给更多的需要的朋友学习~

如何将数据框中的“类型”列转换为多列并统计每天的数据?

本文介绍如何高效处理数据框,将单列“类型”数据转换为多列,并统计每日各类型数据的出现次数。

假设您的数据框包含日期和类型两列,例如:

日期        类型
2024-01-01  A
2024-01-01  B
2024-01-01  A
2024-01-02  C
2024-01-02  B
2024-01-02  C
2024-01-02  A
2024-01-02  A
2024-01-03  A
2024-01-03  D
2024-01-03  B
2024-01-03  E
...

目标是将其转换为如下形式:

日期        类型A  类型B  类型C  类型D  类型E
2024-01-01  2     1     0     0     0
2024-01-02  2     1     2     0     0
2024-01-03  1     1     0     1     1
...

使用Python的Pandas库可以轻松实现此转换:

import pandas as pd

# 示例数据
data = {'日期': ['2024-01-01', '2024-01-01', '2024-01-01', '2024-01-02', '2024-01-02', '2024-01-02', '2024-01-02', '2024-01-02', '2024-01-03', '2024-01-03', '2024-01-03', '2024-01-03'],
        '类型': ['A', 'B', 'A', 'C', 'B', 'C', 'A', 'A', 'A', 'D', 'B', 'E']}
df = pd.DataFrame(data)

# 使用pd.get_dummies()进行one-hot编码
df_encoded = pd.get_dummies(df, columns=['类型'], prefix='', prefix_sep='')

# 按日期分组并求和
df_grouped = df_encoded.groupby('日期').sum()

# 打印结果
print(df_encoded)
print("-" * 60)
print(df_grouped)

pd.get_dummies() 函数将“类型”列转换为多个虚拟变量列(one-hot encoding),然后 groupby()sum() 函数计算每日各类型的出现次数。 代码简洁高效,适用于大规模数据集处理。 输出结果与目标格式一致。

今天关于《如何将数据框中的“类型”列转换为多列并统计每天的数据?》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>