首先需要解决的一个问题是把0~1上的概率给划分到不同的区间,然后分别统计即可。
之前一直用groupby,分组后想count, sum,后变成df。在网上找了好几种方法,都没有成功,最后还是英文文档解决了我的问题。
这是划分好后的各列情况 , 第一列:概率,第二列:所属的区间, 第三列: 实际的label
我主要是 想把这三列 , 按第二列分组,统计各区间的总数,和label为1的数
用NamedAgg 即可把原来的分组变为数据框。
1、Series的创建序列的创建主要有三种方式:
1)通过一维数组创建序列
import numpy as np, pandas as pd
arr1 = np.arange(10)
arr1
type(arr1)
s1 = pd.Series(arr1)
s1
type(s1)
2)通过字典的方式创建序列
dic1 = {'a':10,'b':20,'c':30,'d':40,'e':50}
dic1
type(dic1)
s2 = pd.Series(dic1)
s2
type(s2)
3)通过DataFrame中的某一行或某一列创建序列
这部分内容我们放在后面讲,因为下面就开始将DataFrame的创建。
2、DataFrame的创建
数据框的创建主要有三种方式:
1)通过二维数组创建数据框
arr2 = np.array(np.arange(12)).reshape(4,3)
arr2
type(arr2)
df1 = pd.DataFrame(arr2)
df1
type(df1)
2)通过字典的方式创建数据框
以下以两种字典来创建数据框,一个是字典列表,一个是嵌套字典。
dic2 = {'a':[1,2,3,4],'b':[5,6,7,8],
'c':[9,10,11,12],'d':[13,14,15,16]}
dic2
type(dic2)
df2 = pd.DataFrame(dic2)
df2
type(df2)