大熊猫切了多个栏目

时间:2018-01-14 10:39:03

标签: python pandas

我希望在多个列中应用bin。

a = [1, 2, 9, 1, 5, 3]
b = [9, 8, 7, 8, 9, 1]

c = [a, b]

print(pd.cut(c, 3, labels=False))

效果很好并创造:

[[0 0 2 0 1 0]
[2 2 2 2 2 0]]

但是,我想应用'cut'来创建一个带数字的数据框,然后将其分类如下。

   Values  bin
0       1    0
1       2    0
2       9    2
3       1    0
4       5    1
5       3    0


   Values  bin
0       9    2
1       8    2
2       7    2
3       8    2
4       9    2
5       1    0 

这是我想要做的一个简单的例子。实际上,我有63个独立的数据帧和一个& b是来自每个数据帧的列的示例。

1 个答案:

答案 0 :(得分:5)

zip与list comp一起使用以构建数据帧列表 -

c = [a, b]
r = pd.cut(c, 3, labels=False)

df_list = [pd.DataFrame({'Values' : v, 'Labels' : l}) for v, l in zip(c, r)]

df_list

[   Labels  Values
 0       0       1
 1       0       2
 2       2       9
 3       0       1
 4       1       5
 5       0       3,    Labels  Values
 0       2       9
 1       2       8
 2       2       7
 3       2       8
 4       2       9
 5       0       1]