我在下面的视图中有两个数据帧:
dogs
数据帧是:
DogID PuppyName1 PuppyName2 PuppyName3 PuppyName4 DogWeight
Dog1 Nick NaN NaN NaN 12.7
Dog2 Jack Fox Rex NaN 15.5
Dog3 Snack NaN NaN NaN 10.2
Dog4 Yosee Petty NaN NaN 16.9
puppyWeights
数据帧是:
我需要在基于PuppyWeights
数据帧的Dogs
数据帧中按月份添加关于小狗体重的信息。如果Dog有一个以上的子代,例如:Dog2
,Dog3
->;我需要对每个月的权重值进行PuppyName
的平均值。例如:
Dog2
应该是PuppyWeights
表中Jack
和{
DogID Jan17 Jun18 Dec18 April19 DogWeight
Dog2 0.75 1.5 3.1 3.9 15.5
我试图使用melt
函数将['PuppyName1', 'PuppyName2', 'PuppyName3', 'PuppyName4']
列转换成行。在
但是,我不知道当dog有多个子级时,如何通过聚合将月份信息添加到dogs
数据帧中。在
df2 = dogs.melt(id_vars=['DogID','DogWeight'], var_name="Puppies", value_name='PuppyName')
期望输出为:
DogID Jan17 Jun18 Dec18 April19 DogWeight
Dog1 0.8 1.7 3.7 4.6 12.7
Dog2 0.75 1.5 3.1 3.9 15.5
Dog3 0.8 1.7 2.8 4.4 10.2
Dog4 0.55 1.25 2.95 3.9 16.9
如何按月份向dogs
数据帧添加权重信息?在
如果有任何建议,我将不胜感激。谢谢)
这里有一种方法}
melt
,dogs
,然后merge
和{相关问题 更多 >
编程相关推荐