python – 如何将连续数据拆分成组?
发布时间:2020-12-20 12:09:01 所属栏目:Python 来源:网络整理
导读:我有两个数据集,第一个包含离散数据,第二个包含连续数据: import numpy as np# discretedata1 = [1,1,2,3,4,7,7]# continuousdata2 = np.random.normal(size=100) 现在我想计算频率.它对data1来说很简单,因为它包含离散值: import collectionsc = collecti
我有两个数据集,第一个包含离散数据,第二个包含连续数据:
import numpy as np # discrete data1 = [1,1,2,3,4,7,7] # continuous data2 = np.random.normal(size=100) 现在我想计算频率.它对data1来说很简单,因为它包含离散值: import collections c = collections.Counter(data1) sum = sum(c.values()) for key,val in c.iteritems(): print([key,float(val)/sum]) 如何为连续数字做同样的事情?从理论上我知道必须对连续数据进行分组.只有在此之后它才能表示为条形图.那么,如何在python中对数据进行分组? 解决方法
您正在寻找的是一个
histogram.您可以使用
numpy.histogram 从阵列中获取其中一个.你将一个numpy数组和你的组的边缘(或通常称为它们的bin)传递给函数,它将返回一个2元组,由每个bin中的元素数和bin边缘组成.来自文档的示例:
>>> np.histogram([1,1],bins=[0,3]) (array([0,1]),array([0,3])) @ajrc在评论中提到了熊猫.如果你有一个pandas系列(并且你可以用s = pandas.series(data2)创建一个),你可以通过调用 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |