下面的代码是为了使我的问题更容易理解。我想创建一个概览表,为此,我将循环到“order”列的所有唯一元素,为该列的每个唯一元素创建一个dataframe,然后我将获得“Status”列的每个元素所表示的百分比,值为“.u counts”,继续将其保存到另一个dataframe中,这是我的概览表
Overview_Table = pd.DataFrame()
for i, val in enumerate(df['Order'):
dfi = df.loc[df['Order']==val]
status = pd.DataFrame(dfi['Status Situation'].value_counts(normalize = True))
statusi.columns = ['Order: {}'.format(val)]
Overview_Table = pd.concat([Overview_Table, statusi], axis=1)
我面临的问题是,当我一直将值连接到Overview\表时,这些值的连接顺序不同。因此,我要寻找的是找出一种方法,使status dataframe始终以相同的顺序附加到Overview\表dataframe
我已经尝试过使用.sort_index
,但是没有成功。此外,列“Order”和“Status”都是分类特性
希望我能简明扼要。我真的很感激你在这件事上的帮助!我们也欢迎您提出查找内容的建议
我想这就是你要找的
创建具有顺序和状态以及一些随机数的随机数据集:
按顺序和状态分组并求和值:
按顺序分组并求和(以获得分母)
通过左连接将它们合并:
创建百分比(值\u counts normalize):
删除不需要的列:
如果没有你提供的实际数据集,以及你所寻找的东西的期望,很难肯定地回答这个问题,但我相信这就是你所寻找的
相关问题 更多 >
编程相关推荐