【问题标题】:combine string in python pandas在 python pandas 中组合字符串
【发布时间】:2016-10-22 07:19:15
【问题描述】:
我在分析关于将字符串组合在一起的数据集时遇到问题。
数据框如下所示:
IP Event
01 check
01 redo
01 view
02 check
02 check
03 review
04 delete
如您所见,IP 包含重复项。我的问题是,怎样才能得到每个IP按顺序组合Event组的结果。比如我要找的结果是:
IP result
01 check->redo->view
02 check->check
03 review
04 delete
【问题讨论】:
标签:
arrays
string
python-2.7
pandas
dataframe
【解决方案1】:
试试这个:
In [27]: df.groupby('IP').agg('->'.join).reset_index()
Out[27]:
IP Event
0 01 check->redo->view
1 02 check->check
2 03 review
3 04 delete
或
In [26]: df.groupby('IP').agg('->'.join)
Out[26]:
Event
IP
01 check->redo->view
02 check->check
03 review
04 delete
【讨论】:
-
@EthanBao,不客气! :) 请考虑accepting 最有帮助的答案 - 这也表明您的问题已得到解答
【解决方案2】:
用 lambda 试试这个:
df.groupby("IP")['Event'].apply(lambda x: '->'.join(x)).reset_index()
# IP Event
# 0 1 check->redo->view
# 1 2 check->check
# 2 3 review
# 3 4 delete