我想使用熊猫数据帧生成绘图。我在这个话题上苦苦挣扎
现在,我有这个:
AGE_GROUP shop_id count_of_member
0 10 1 40
1 10 12 57615
2 20 1 186
4 30 1 175
5 30 12 322458
6 40 1 171
7 40 12 313758
8 50 1 158
10 60 1 168
有些商店可能没有记录。例如,plotly将需要x=[1,2,3]
、y=[4,5,6]
。如果我的输入是x=[1,2,3]
和y=[4,5]
,那么x和y的大小不同,将引发异常。我需要为丢失的shop_id添加空值记录。因此,我需要:
AGE_GROUP shop_id count_of_member
0 10 1 40
1 10 12 57615
2 20 1 186
3 20 12 0
4 30 1 175
5 30 12 322458
6 40 1 171
7 40 12 313758
8 50 1 158
9 50 12 0
10 60 1 168
11 60 12 0
对于每个年龄组,我需要有2个店铺id,因为唯一的店铺id集是1和12 如果有10个年龄组,将显示20行。 例如:
AGE_GROUP shop_id count_of_member
1 10 12 57615
2 20 1 186
3 30 1 175
4 40 1 171
5 40 12 313758
6 50 1 158
7 60 1 168
有2个独特的店铺id:1和12,6个不同年龄组:10,20,30,40,50,60 在年龄组10中:仅存在店铺id 12,但没有店铺id 1。 因此,我需要有一个新记录来显示店铺id 1的10岁组成员的计数为0。 我将得到的最后一个数据帧应该是:
AGE_GROUP shop_id count_of_member
1 10 12 57615
**1 10 1 0**
2 20 1 186
**2 20 12 0**
3 30 1 175
**3 30 12 0**
4 40 1 171
5 40 12 313758
6 50 1 158
**6 50 12 0**
7 60 12 0
7 60 1 168
** are the new added rows
我如何实现这个转换
首先,你不必。 正确使用后,plotly提供了一系列方法,您可以将数据集可视化为第三个示例中的数据:
不需要应用熊猫来获得第四个样本的结构。你不清楚你想用这个样本做什么,但我怀疑你想显示累积的
count_of_member
每age group
除以shop_id
像这样你可能想知道为什么
shop_id1
的蓝色条没有显示出来。但这仅仅是因为数字的大小差别太大了。如果您将shop_id=1
的count_of_member
替换为shop_id=12
的shop_id=12
的count_of_member
小部分,您将得到以下结果:下面是一个完整的代码片段,其中修改后的数据集已被注释掉。使用的数据集仍然与第三个数据示例中的数据集相同
完整代码:
编辑:
如果出于某种原因,您仍然需要像第四个示例中那样构建数据,我建议您提出另一个问题,并特别用
[pandas]
和[python]
标记它,只关注问题的数据转换部分相关问题 更多 >
编程相关推荐