按行和列排序的显示表[重复]

Posted

技术标签:

【中文标题】按行和列排序的显示表[重复]【英文标题】:Display table ordered by row and columns [duplicate] 【发布时间】:2022-01-02 02:27:27 【问题描述】:

我正在努力显示一个包含从数据库发出的数据的 html 表格。 我只是使用 SELECT 和 Join multiples 表检索数据。 检索数据如下:

StorageLocation Quantity RiskPhrase
Storage1 10 H225
Storage2 4 H225
Storage1 3 H226
Storage3 3 H226
Storage4 3 H226
Storage4 3 H300

我想这样显示:

StorageLocation H225 H226 H300
Storage1 10 0 3
Storage2 4 0 0
Storage3 0 3 0
Storage4 0 3 3

我真的不知道如何处理这个问题。 Dataframe 是最好的解决方案吗? 您的帮助将不胜感激。 谢谢

【问题讨论】:

如果您可以控制查询,我建议您在那里进行排序。您可能需要一个自联接和一个外部联接来获得您所追求的。 您真的希望 H225 列在您​​的输出中列出两次吗?我认为您的输入与示例中的输出不匹配。 抱歉有点失误。现在已更正 【参考方案1】:

IIUC,你要pivot

>>> df.pivot("StorageLocation", "RiskPhrase", "Quantity").fillna(0).rename_axis(None, axis=1)

                 H225  H226  H300
StorageLocation                  
Storage1         10.0   3.0   0.0
Storage2          4.0   0.0   0.0
Storage3          0.0   3.0   0.0
Storage4          0.0   3.0   3.0

【讨论】:

感谢您的回复。我会试试的 它运行良好。谢谢!

以上是关于按行和列排序的显示表[重复]的主要内容,如果未能解决你的问题,请参考以下文章

显示 Pandas 数据框的所有行和列 [重复]

对矩阵按行和按列进行排序

我想拆分数据并按行和列获取值

如何修复 CListctrl 中的行和列重复

获取熊猫中NaN值的所有行和列位置[重复]

在psql中选择重复列,然后按行id排序