所以我有这个 DF:
In [130]: dfAbr
Out[130]:
ip ospfArea router_name
0 1.1.1.1 0.0.0.2 Router1-1
1 1.1.1.2 0.0.0.2 Router1-2
140 5.5.5.1 0.0.0.5 Router5-1
141 5.5.5.2 0.0.0.5 Router5-2
Run Code Online (Sandbox Code Playgroud)
我想将其重塑为 2 行数据框,例如:
我一直在玩stack/unstack和pivot 功能,但不能走那么远。
例如,dfAbr1 = pd.DataFrame(dfAbr.set_index('ospfArea').stack()).reset_index()重命名列名会产生以下结果:
In [151]: dfAbr1
Out[151]:
ospfArea level1 level2
0 0.0.0.2 ip 1.1.1.1
1 0.0.0.2 router_name Router1-1
2 0.0.0.2 ip 1.1.1.2
3 0.0.0.2 router_name Router1-2
4 0.0.0.5 ip 5.5.5.1
5 0.0.0.5 router_name Router5-1
6 0.0.0.5 ip 5.5.5.2
7 0.0.0.5 router_name Router5-2
Run Code Online (Sandbox Code Playgroud)
从那里开始,我想要pivot它,就像这样: …
数据框是这样设置的。我想要一个具有多级帐户索引的数据透视表,伪。我希望列是单独的周,值是销售额。该数据是伪 x 周 x 帐户,因此我不需要聚合任何数据。我怎样才能完成?
pseudo week account sales
0 31527 2017-12-30 4430012511 2.79
1 145584 2017-12-16 4430012511 8.37
2 31608 2017-12-23 4430012511 19.53
3 6362 2017-12-16 4430012511 5.58
Run Code Online (Sandbox Code Playgroud) 我正在尝试将我的长数据重塑为宽格式。数据目前看起来像:
OBS . date . TICKER . RET
1 . 20050131 . AAPL . 0.02
2 . 20050231 . AAPL . 0.01
3 . 20050131 . GOOG . 0.05
4 . 20050231 . GOOG . 0.03
Run Code Online (Sandbox Code Playgroud)
我想获得如下数据:
TICKER . 20050131 . 20050231
AAPL . 0.02 . 0.01
GOOG . 0.05 . 0.03
Run Code Online (Sandbox Code Playgroud)
数据存储在熊猫数据框中。我尝试堆叠数据,但我认为我做得不对。
谢谢您的帮助!
我有如下销售数据集:df1
district item Year salesAmount
Arba pen 2019 10
Arba pen 2019 20
Arba pencil 2018 30
Arba pencil 2018 30
Arba pencil 2019 30
Cebu pen 2019 100
Cebu pen 2019 300
Cebu pen 2018 100
Cebu pen 2018 100
Cebu pen 2019 100
Cebu laptop 2019 20000
Cebu laptop 2018 20000
Cebu fruit 2019 200
Cebu fruit 2018 800
Cebu fruit 2019 800
Cebu fruit 2018 100
Run Code Online (Sandbox Code Playgroud)
我可以完成 groupby 并分别获得 2018 年和 2019 年每个产品的总和。
result = df1.groupby(['district', 'item', …Run Code Online (Sandbox Code Playgroud) 我有这样的数据
Employed Coverage Education Amount
No Basic Bachelor 541.8029122
No Extended Bachelor 312.6400955
No Premium Bachelor 427.9560121
No Basic Bachelor 91.17931022
No Basic Bachelor 533.6890081
Yes Basic Bachelor 683.484326
Yes Basic College 586.2670885
No Premium Master 725.0412884
Yes Basic Bachelor 948.3628611
Run Code Online (Sandbox Code Playgroud)
我想用多索引数据透视表对数量求和,使其看起来如下所示.这是我关注的链接,但无法获得正确的结果
需要你的帮助.
我有这样的数据框:
import pandas as pd
data = [
[1, 'A', 10], [1, 'B', 20], [1, 'C', 30],
[2, 'A', 30], [2, 'B', 20], [2, 'C', 10],
[3, 'A', 20], [3, 'B', 40], [3, 'C', 20]
]
df = pd.DataFrame(data, columns = ['Day', 'Company', 'Profit'])
df
Run Code Online (Sandbox Code Playgroud)
我想转换这个表,使得:
如何将数据框转换为这样的新数据框?
Year值成为列,其余列成为行。有任何想法吗?
数据:
Year Propertyval Cumulative
0 1 1224000.00 24000.00
1 2 1248480.00 48480.00
2 3 1273449.60 73449.60
Run Code Online (Sandbox Code Playgroud)
所需格式:
Desc 1 2 3
0 Propertyval 1248480.00 1273449.60 1273449.60
1 Cumulative 24000.00 48480.00 73449.60
Run Code Online (Sandbox Code Playgroud)