栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

计算CSV文件中Python中的特定事件

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

计算CSV文件中Python中的特定事件

既然有人已经发布了

defaultdict
解决方案,那么我将为熊猫提供一个解决方案。
pandas
是一个非常方便的数据处理库。除了其他出色的功能外,它还可以根据需要的输出而在一行中处理该计数问题。真:

df = pd.read_csv("cluster.csv")counted = df.groupby(["Cluster_id", "User", "Quality"]).size()df.to_csv("counted.csv")

-

只是为了提供

pandas
易于使用的预告片,我们可以加载文件-其中的主要数据存储对象
pandas
称为“ Dataframe”:

>>> import pandas as pd>>> df = pd.read_csv("cluster.csv")>>> df<class 'pandas.core.frame.Dataframe'>Int64Index: 500000 entries, 0 to 499999Data columns:Tag500000  non-null valuesUser          500000  non-null valuesQuality       500000  non-null valuesCluster_id    500000  non-null valuesdtypes: int64(1), object(3)

我们可以检查一下前几行是否正常:

>>> df[:5]   Tag  User Quality  Cluster_id0  bbb  u001     bad          391  bbb  u002     bad          362  bag  u003    good          113  bag  u004    good94  bag  u005     bad          26

然后我们可以按Cluster_id和User分组,并在每个组上进行工作:

>>> for name, group in df.groupby(["Cluster_id", "User"]):...     print 'group name:', name...     print 'group rows:'...     print group...     print 'counts of Quality values:'...     print group["Quality"].value_counts()...     raw_input()...     group name: (1, 'u003')group rows:        Tag  User Quality  Cluster_id372002  xxx  u003     bad1counts of Quality values:bad    1group name: (1, 'u004')group rows:Tag  User Quality  Cluster_id126003  ground  u004     bad1348003  ground  u004    good1counts of Quality values:good    1bad     1group name: (1, 'u005')group rows:Tag  User Quality  Cluster_id42004   ground  u005     bad1258004  ground  u005     bad1390004  ground  u005     bad1counts of Quality values:bad    3[etc.]

如果您要进行大量

csv
文件处理,那么绝对值得一看。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/637079.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号