python - 如何计算列数据框Python中的出现次数
问题描述
我有这个数据框
ORF IDClass genName ORFDesc
0 b186 [1,1,1,0] 'bglS' beta-glucosidase
1 b2202 [1,1,1,0] 'cbhK' carbohydrate kinase
2 b727 [1,1,1,0] 'fucA' L-fuculose phosphate aldolase
3 b1731 [1,1,1,0] 'gabD1' succinate-semialdehyde dehydrogenase
4 b234 [1,1,1,0] 'gabD2' succinate-semialdehyde dehydrogenase
我需要计算有多少寄存器有 IDClass = [1,1,1,0], IDClass = [1,2,0,0] 等
我使用他的 str.count().sum() 函数,但它返回的次数比我数据集中的寄存器多。我究竟做错了什么?
前任:
IN: count = df2.IDClass.str.count('[1,1,1,0]').sum()
OUT: [3924 rows x 4 columns]
21552
如果我做:
IN: count = df2.IDClass.str.count('[1,1,1,0]').sum()
OUT: [3924 rows x 4 columns]
0 7
1 7
2 7
3 7
4 7
..
3919 6
3920 6
3921 6
3922 6
3923 6
任何的想法?谢谢提前,
解决方案
如果你IDClass
是字符串类型,你可以这样做:
df['IDClass'].value_counts()
如果出现错误,则很可能是您IDClass
的列表类型。然后你可以使用tuple
:
df['IDClass'].apply(tuple).value_counts()
推荐阅读
- javascript - localStorage 未正确存储
- mysql - sql,如何选择具有2个条件的字段
- facebook - Messenger 的 webhook 单个消息中的多个视频
- macos - 如何将通用 USB 外围设备从 macOS X 主机传递到 VirtualBox 中的 Ubuntu 16.04 x64 来宾?
- google-app-engine - Fresh ASP.NET Core 2.1 App Engine 项目返回 503 错误
- python-3.x - 坐标列表摘要
- reactjs - 您可能不会调用 store.getState()
- c# - 在 Visual Studio 2008 中连接到 SQL Server 2012 数据库
- javascript - 仅使用服务器时间而不是 JS 刷新 div
- c++ - 如何为 C++/CLI vcxproj 项目创建 nuget 包和更新元数据