这是一个相当初级的问题。你知道吗
我有一个事务数据框架:
Customer Date Amount
Angus 2009-07-18 $76.46
Bruno 2009-07-21 $68.66
Danno 2009-07-25 $73.52
Chapp 2009-07-11 $56.04
Chapp 2009-07-21 $11.30
Frank 2009-07-07 $52.86
Chapp 2009-07-09 $97.82
Danno 2009-07-11 $84.98
(etc. for thousands of lines)
我想从这些数据中创建四个数据帧:
你能告诉我合适的密码吗?你知道吗
(答案是“为什么要使用数据帧?你应该用ThnargLopes!”将受到热烈欢迎。)
好吧,我已经弄明白了。首先,我们创建一个事务字段,其中包含要求和的个数:
我们按客户分组:
第一个最简单:
四也不难:
2号和3号很棘手。。。我找到了一个解决方案,似乎与我的测试数据。按客户和日期对数据进行排序,然后按每个客户的第一个进行聚合:
…但是当我在我的大数据集上运行它时,我被告知我最近的一些事务发生在上一次事务之前。这毫无意义。你知道吗
原来日期字段是作为文本导入的!所以,完整的解决方案:
我对此很满意,除了“礼物”一栏,我确信这不是以最优雅的方式实现的。你知道吗
我认为
DataFrame
是一个很好的数据结构。每当您设置一组“split-apply-combine”的分析步骤时,Pandas
就非常出色。您可以编写一个函数,假设您只有一个客户,并返回一个Series
,就像您正在寻找的那样。你知道吗然后使用
groupby
和apply
:但是,由于每个新的
DataFrames
都是单个客户的摘要,因此我建议编写一个函数,可以在一个Series
中返回所有所需的结果。你知道吗未通过我的手机测试!
相关问题 更多 >
编程相关推荐