标签:python-3-x csv python
我熟悉用python读写csv文件的基本概念.但是我坚持要为这个问题弄个逻辑.我认为GROUP BY可以解决我的问题,但如何在python中做到
Category Data
A Once upon a time.
A There was a king.
A who ruled a great and glorious nation.
B He loved each of them dearly.
B One day, when the young ladies were of age to be married.
B terrible, three-headed dragon laid.
C It is so difficult to deny
C the reality
我想对这样的输出进行逻辑处理,即类别A的数据合并到一行,对于类别B和C则这样合并.
Category Data
A Once upon a time. There was a king. who ruled a great and glorious nation.
B He loved each of them dearly. One day, when the young ladies were of age to be married. terrible, three-headed dragon laid.
C It is so difficult to deny the reality
请大家在这个逻辑上帮助我,请多多关照.
解决方法:
使用pandas库,您可以使用groupby并创建一个自定义聚合函数,该函数将各个类别的数据连接在一起
>>> import pandas as pd
>>> data = [['A', 'Once upon a time.'], ['A', 'There was a king.'], ['A', 'who ruled a great and glorious nation.'], ['B', 'He loved each of them dearly. '], ['B', 'One day, when the young ladies were of age to be married. '], ['B', 'terrible, three-headed dragon laid. '], ['C', 'It is so difficult to deny '], ['C', 'the reality']]
>>> df = pd.DataFrame(data=data, columns=['Category','Data'])
>>> df
Category Data
0 A Once upon a time.
1 A There was a king.
2 A who ruled a great and glorious nation.
3 B He loved each of them dearly.
4 B One day, when the young ladies were of age to ...
5 B terrible, three-headed dragon laid.
6 C It is so difficult to deny
7 C the reality
>>> df.groupby('Category').agg({'Data': lambda x : ' '.join(x)})
Data
Category
A Once upon a time. There was a king. who ruled ...
B He loved each of them dearly. One day, when t...
C It is so difficult to deny the reality
标签:python-3-x,csv,python 来源: https://codeday.me/bug/20191109/2013079.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。