为了账号安全,请及时绑定邮箱和手机立即绑定

如何合并数据框中的一些数据

如何合并数据框中的一些数据

开心每一天1111 2021-12-17 15:48:49
我需要在数据框中合并一些数据,因为我将在 python 中编码 [顺序关联规则]。如何合并数据以及我应该在 python 中使用什么算法?先验?FP增长?我在python中使用apriori找不到[顺序关联规则]。他们使用 R访问地点为250个。唯一ID号为116807,总行数为170万。而且,每个 id 都有 country_code(111 个国家/地区,但我会将它们分类为 10 个国家/地区).. 所以我将它们再合并一个。以前的数据index     date_ymd      id     visit_nm   country1         20170801    123123    seoul      4602         20170801    123123    tokyo      4603         20170801    124567    seoul      4404         20170802    123123    osaka      4605         20170802    123123    seoul      460...         ...         ...      ...我需要的index    Transaction           visit_nm      country1        20170801123123      {seoul,tokyo}     4602        20170802123123      {osaka,seoul}     460
查看完整描述

2 回答

?
斯蒂芬大帝

TA贡献1827条经验 获得超8个赞

根据我看到的数据,使用 groupby agg:


s=pd.Series(df.date_ymd.astype(str)+df.id.astype(str),name='Transaction')

(df.groupby(s)

 .agg({'visit_nm':lambda x: set(x),'country':'first'}).reset_index())

      Transaction        visit_nm  country

0  20170801123123  {seoul, tokyo}      460

1  20170801124567         {seoul}      440

2  20170802123123  {osaka, seoul}      460


查看完整回答
反对 回复 2021-12-17
?
梵蒂冈之花

TA贡献1900条经验 获得超5个赞

你也可以使用:


df['Transaction'] = df['date_ymd'].map(str)+df['id'].map(str)

df.groupby('Transaction').agg({'visit_nm': lambda x: set(x), 'country': 'first'}).reset_index()



查看完整回答
反对 回复 2021-12-17
  • 2 回答
  • 0 关注
  • 141 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信