我有以下df data
data
Site Storage Commodity parameter value unit
0 Mid Pump Elec inst-cap-c 0.000000e+00 MWh
1 Mid Pump Elec cap-lo-c 0.000000e+00 MWh
2 Mid Pump Elec cap-up-c 1.500000e+15 MWh
...
16 Mid Pump Elec init 1.000000e+00 None
17 Mid Pump Elec discharge 3.500000e-06 None
18 Mid Pump Elec ep-ratio NaN None
唯一具有parameter
值的NaN
是ep-ratio
。我通过以下方法在此df上应用了熊猫pivot_table()
:
data = data.pivot_table(values='value',
index=['Site', 'Storage', 'Commodity'],
columns='parameter').reset_index()
问题是我以某种方式枢转后参数ep-ratio消失了。
data
Site Storage Commodity cap-lo-c ... inv-cost-p var-cost-c var-cost-p wacc
0 Mid Pump Elec 0.0 ... 100000.0 0.0 0.02 0.07
data['ep-ratio']
*** KeyError: 'ep-ratio'
data['cap-lo-c']
0 0.0
所以我认为这是因为ep-ratio
= NaN
我该如何解决?除了更改ep-ratio的值
答案 0 :(得分:0)
您必须包含dropna=False
,它将保留NaN
的值。
data = df.pivot_table(values='value',
index=['Site', 'Storage', 'Commodity'],
columns='parameter', dropna=False).reset_index()