kin*_*spp 2 excel python-3.x pandas
我正在研究一种算法,它需要按两列分组.Pandas支持使用以下两列进行分组:
df.groupby([col1, col2])
Run Code Online (Sandbox Code Playgroud)
但结果数据帧不是必需的数据帧
工作设置:
Python: v3.5
Pandas: v0.18.1
Pandas Dataframe - 输入数据:
Type Segment
id
1 Domestic 1
2 Salary 3
3 NRI 1
4 Salary 4
5 Salary 3
6 NRI 4
7 Salary 4
8 Salary 3
9 Salary 4
10 NRI 4
Run Code Online (Sandbox Code Playgroud)
所需数据帧: 每个段中[国内,薪水,NRI]的计数
Domestic Salary NRI
Segment
1 1 3 1
3 0 0 0
4 0 3 2
Run Code Online (Sandbox Code Playgroud)
实验:
group = df.groupby(['Segment', 'Type'])
group.size()
Segment Type Count
1 Domestic 1
NRI 1
3 Salary 3
4 Salary 3
NRI 2
Run Code Online (Sandbox Code Playgroud)
我能够使用MS Excel数据透视表功能实现所需的数据帧.有什么办法,我可以用熊猫达到类似的效果吗?
在Groupby.size操作之后,创建需要转换为数据帧的multi-index(2级索引)series对象,这可以通过unstacking第二级索引完成并且可选地NaNs用0获得填充.
df.groupby(['Segment', 'Type']).size().unstack(level=1, fill_value=0)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2765 次 |
| 最近记录: |