草庐IT

python - 具有多索引的 Pandas 样式对象

我正在使用样式器格式化pandas数据框以突出显示列和格式化数字。我还想应用多索引以获得更清晰、愉快和易于阅读的内容。由于我将Styler应用于列的子集,因此它不适用于多索引。例子:arrays=[np.hstack([['One']*2,['Two']*2]),['A','B','C','D']]columns=pd.MultiIndex.from_arrays(arrays)data=pd.DataFrame(np.random.randn(5,4),columns=list('ABCD'))data.columns=columnsimportseabornassnscm=sns.

python - Pandas 多索引 : Divide all columns by one column

我有一个数据框results的形式TOTEXPPQTOTEXPCQFINLWT21yearquarter1319.183392e+095.459961e+091271559.39822.907887e+091.834126e+09481169.672我试图将所有(前两列)除以最后一列。我的尝试是weights=results.pop('FINLWT21')results/weights但是我明白了ValueError:cannotjoinwithnolevelspecifiedandnooverlappingnames我不明白:索引中有重叠的名称:weights.head()yearq

python - Pandas 在行上设置多索引,然后转置到列

如果我有一个简单的数据框:print(a)onetwothree0A1a1A2b2B1c3B2d4C1e5C2f我可以通过发出以下命令轻松地在行上创建多索引:a.set_index(['one','two'])threeonetwoA1a2bB1c2dC1e2f是否有类似的简单方法来在列上创建多索引?我想结束:oneABCtwo1212120abcdef在这种情况下,创建行多索引然后转置它会非常简单,但在其他示例中,我会想要在行和列上创建多索引。 最佳答案 是的!这称为换位。a.set_index(['one','two']).T让

python - 如何将层次结构或多索引应用于 Pandas 列

我看过很多关于如何分层排列数据帧行索引的示例,但我正在尝试对列做同样的事情,但我不理解语法:给定:df=pd.DataFrame(np.random.randn(10,10),columns=['consumption','voltage','consumption','voltage','temperature','humidity','consumption','voltage','temperature','humidity'],index=pd.date_range('20000103',periods=10))>>>dfconsumptionvoltageconsumptio

python - 使用多索引在 Pandas 中添加小计列

我有一个数据框,在列上有一个3级深度多索引。我想计算跨行(sum(axis=1))的小计,其中我对其中一个级别求和,同时保留其他级别。我想我知道如何使用pd.DataFrame.sum的level关键字参数来做到这一点。但是,我在考虑如何将这个总和的结果合并回原始表时遇到了麻烦。设置:importnumpyasnpimportpandasaspdfromitertoolsimportproductnp.random.seed(0)colors=['red','green']shapes=['square','circle']obsnum=range(5)rows=list(produc

python - Pandas 中的多索引排序

我有一个通过groupby操作创建的多索引DataFrame。我正在尝试使用索引的多个级别进行复合排序,但我似乎无法找到满足我需要的排序函数。初始数据集如下所示(各种产品的每日销售量):DateManufacturerProductNameProductLaunchDateSales02013-01-01AppleiPod2001-10-231212013-01-01AppleiPad2010-04-031322013-01-01SamsungGalaxy2009-04-271432013-01-01SamsungGalaxyTab2010-09-021542013-01-02Appl

python - Pandas 将数据帧与多索引和重叠索引级别相乘

我正在努力完成一项本应很简单的任务,但它并没有像我想象的那样工作。我有两个带有多索引和列的数字数据框A和B:A=ABCDX1AX1BX1CX1DX12AX2BX2CX2DX23AX3BX3CX3DX3Y1AY1BY1CY1DY12AY2BY2CY2DY23AY3BY3CY3DY3B=ABCDX1aAX1aBX1aCX1aDX1abAX1bBX1bCX1bDX1bcAX1cBX1cCX1cDX1c2aAX2aBX2aCX2aDX2abAX2bBX2bCX2bDX2bcAX2cBX2cCX2cDX2c3aAX3aBX3aCX3aDX3abAX3bBX3bCX3bDX3bcAX3cBX3cC

python - Pandas 将数据帧与多索引和重叠索引级别相乘

我正在努力完成一项本应很简单的任务,但它并没有像我想象的那样工作。我有两个带有多索引和列的数字数据框A和B:A=ABCDX1AX1BX1CX1DX12AX2BX2CX2DX23AX3BX3CX3DX3Y1AY1BY1CY1DY12AY2BY2CY2DY23AY3BY3CY3DY3B=ABCDX1aAX1aBX1aCX1aDX1abAX1bBX1bCX1bDX1bcAX1cBX1cCX1cDX1c2aAX2aBX2aCX2aDX2abAX2bBX2bCX2bDX2bcAX2cBX2cCX2cDX2c3aAX3aBX3aCX3aDX3abAX3bBX3bCX3bDX3bcAX3cBX3cC

python - Pandas groupby(),agg() - 如何在没有多索引的情况下返回结果?

我有一个数据框:pe_odds[['EVENT_ID','SELECTION_ID','ODDS']]Out[67]:EVENT_IDSELECTION_IDODDS0100429300529752918.001100429300529752920.002100429300529752921.003100429300529752922.004100429300529752923.005100429300529752924.006100429300529752925.00当我使用groupby和agg时,我得到了一个多索引的结果:pe_odds.groupby(['EVENT_ID','

python - Pandas groupby(),agg() - 如何在没有多索引的情况下返回结果?

我有一个数据框:pe_odds[['EVENT_ID','SELECTION_ID','ODDS']]Out[67]:EVENT_IDSELECTION_IDODDS0100429300529752918.001100429300529752920.002100429300529752921.003100429300529752922.004100429300529752923.005100429300529752924.006100429300529752925.00当我使用groupby和agg时,我得到了一个多索引的结果:pe_odds.groupby(['EVENT_ID','