0

如果这是一个奇怪的问题,我很抱歉,但我正在尝试处理来自世界银行的一些数据,它的格式很奇怪。

这是数据:

!pip install wbgapi
import wbgapi as wb
import pandas as pd
df = wb.data.DataFrame(['EN.ATM.CO2E.KT'])
df
YR1960  YR1961  YR1962  YR1963  YR1964  YR1965  YR1966  YR1967  YR1968  YR1969  YR1970  YR1971  YR1972  YR1973  YR1974  YR1975  YR1976  YR1977  YR1978  YR1979  YR1980  YR1981  YR1982  YR1983  YR1984  YR1985  YR1986  YR1987  YR1988  YR1989  YR1990  YR1991  YR1992  YR1993  YR1994  YR1995  YR1996  YR1997  YR1998  YR1999  YR2000  YR2001  YR2002  YR2003  YR2004  YR2005  YR2006  YR2007  YR2008  YR2009  YR2010  YR2011  YR2012  YR2013  YR2014  YR2015  YR2016  YR2017  YR2018  YR2019  YR2020
economy                                                                                                                                                                                                                                                 
ABW 11092.675000    11576.71900 12713.489000    12178.10700 11840.743000    10623.299000    9933.903000 12236.77900 11378.701000    14891.68700 16655.514000    14495.651000    14055.611000    15592.084000    14132.618000    10234.59700 21862.654000    11419.038000    9724.884000 10201.594000    10498.62100 9999.909000 11180.683000    5746.189000 14348.971000    16794.860000    179.683000  447.374000  612.389000  649.05900   NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
AFE 118545.901306   123758.90333    128093.897815   132810.33253    144345.352398   155803.780096   157932.257312   165066.04049    174004.892685   182939.98432    191243.301798   213550.946401   217837.985316   223290.233235   226298.370019   231987.50871    240665.983329   246129.511761   250630.436423   268619.094385   280929.89417    308901.806081   329541.384584   344021.803024   365909.758291   374516.789662   385101.670967   388106.047579   404605.677834   401747.94789    309980.825443   304407.723573   300329.971872   306574.577075   312677.028664   330892.998964   341412.366429   357963.108675   366634.479152   352429.271543   358460.646325   397075.660289   409057.179216   434533.137679   466883.238781   468365.697902   476590.299877   500147.184546   533634.514563   515682.543832   543808.651821   535604.357505   559333.857277   580510.924989   601860.163983   586385.004029   592299.593959   601323.394691   600351.133333   NaN NaN
AFG 414.371000  491.37800   689.396000  707.73100   839.743000  1008.425000 1092.766000 1283.45000  1224.778000 942.41900   1672.152000 1895.839000 1532.806000 1639.149000 1917.841000 2126.86000  1987.514000 2390.884000 2159.863000 2240.537000 1760.16000  1983.847000 2101.191000 2522.896000 2830.924000 3509.319000 3142.619000 3124.284000 2867.594000 2775.91900  2960.000000 2740.000000 1430.000000 1360.000000 1300.000000 1250.000000 1180.000000 1100.000000 1050.000000 820.000000  770.000000  810.000000  1100.000000 1350.000000 1130.000000 1640.000000 1940.000000 2360.000000 4390.000000 6000.000000 8670.000000 12260.000000    10450.000000    8510.000000 7810.000000 7990.000000 7390.000000 7380.000000 7440.000000 NaN NaN
AFW 8760.463000 9376.51900  9710.216000 11540.04900 13985.938000    19827.469000    21246.598000    21239.26400 16527.169000    23743.82500 36398.642000    48301.724000    58059.611000    69676.667000    84392.338000    69995.69600 76900.657000    74154.074000    75045.155000    98319.604000    98913.65800 96889.474000    98755.977000    91337.636000    101154.195000   104344.485000   99977.088000    89694.820000    103820.104000   82562.50500 90210.000000    99880.000000    111590.000000   115080.000000   112220.000000   113980.000000   121890.000000   120450.000000   116930.000000   118000.000000   119510.000000   130120.000000   133840.000000   137380.000000   141040.000000   155650.000000   153210.000000   153350.000000   157600.000000   145550.000000   165750.000000   179070.000000   181740.000000   191990.000000   198440.000000   193060.000000   195120.000000   201900.000000   224380.000000   NaN NaN
AGO 550.050000  454.70800   1180.774000 1151.43800  1224.778000 1188.108000 1554.808000 993.75700   1672.152000 2786.92000  3582.659000 3410.310000 4506.743000 4880.777000 4873.443000 4415.06800  3285.632000 3534.988000 5412.492000 5504.167000 5346.48600  5280.480000 4649.756000 5115.465000 5009.122000 4701.094000 4660.757000 5815.862000 5130.133000 5009.12200  6330.000000 6530.000000 6370.000000 6900.000000 6690.000000 10780.000000    11410.000000    11730.000000    11370.000000    12650.000000    12370.000000    12910.000000    13620.000000    18010.000000    19290.000000    18210.000000    20340.000000    23490.000000    25080.000000    27150.000000    28530.000000    29460.000000    30250.000000    32820.000000    34630.000000    35160.000000    35410.000000    30840.000000    27340.000000    NaN NaN
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
XKX NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN
YEM 58.672000   73.34000    69.673000   80.67400    99.009000   102.676000  99.009000   102.67600   128.345000  135.67900   168.682000  216.353000  253.023000  326.363000  370.367000  605.05500   729.733000  865.412000  949.753000  1045.095000 1195.44200  1360.457000 1958.178000 2489.893000 2948.268000 3157.287000 3153.620000 3355.305000 3406.643000 3498.31800  6640.000000 8500.000000 9130.000000 8120.000000 8480.000000 9870.000000 10080.000000    10850.000000    11730.000000    13170.000000    13890.000000    15080.000000    15140.000000    17400.000000    18400.000000    19380.000000    19410.000000    20630.000000    22010.000000    25650.000000    23990.000000    20690.000000    19680.000000    26350.000000    26710.000000    14210.000000    10880.000000    10060.000000    9310.000000 NaN NaN
ZAF 97934.569000    102213.95800    105767.281000   109826.65000    119657.877000   128260.659000   128356.001000   133885.83700    138084.552000   143280.69100    149763.947000   168568.323000   171725.610000   173533.441000   176734.732000   185201.83500    193115.221000   199950.509000   202099.371000   218908.899000   228454.10000    257368.395000   280749.187000   292230.564000   315948.720000   324214.138000   330855.075000   329025.242000   343055.184000   341108.00700    247660.000000   242330.000000   238820.000000   246430.000000   252010.000000   264190.000000   273980.000000   288920.000000   296510.000000   278470.000000   284730.000000   320600.000000   331420.000000   353110.000000   379970.000000   377640.000000   379560.000000   396900.000000   426560.000000   404020.000000   425110.000000   409120.000000   426710.000000   436870.000000   447980.000000   424880.000000   425180.000000   435140.000000   433250.000000   NaN NaN
ZMB NaN NaN NaN NaN 3278.298000 3916.356000 3501.985000 4792.76900  4572.749000 4275.72200  3769.676000 3791.678000 4066.703000 4591.084000 4202.382000 4081.37100  4026.366000 3744.007000 3476.316000 3604.661000 3531.32100  3366.306000 3520.320000 3270.964000 2819.923000 2753.917000 2889.596000 2702.579000 3142.619000 2603.57000  2740.000000 2880.000000 2850.000000 2520.000000 2140.000000 2130.000000 1760.000000 2280.000000 2170.000000 1760.000000 1810.000000 1830.000000 1920.000000 2090.000000 2110.000000 2290.000000 2180.000000 1980.000000 2180.000000 2470.000000 2640.000000 3060.000000 4020.000000 4240.000000 4800.000000 5070.000000 5590.000000 6990.000000 7740.000000 NaN NaN
ZWE NaN NaN NaN NaN 4473.740000 5214.474000 6046.883000 5298.81500  6384.247000 6750.94700  8162.742000 8742.128000 8225.081000 9281.177000 9057.490000 8320.42300  10868.988000    9299.512000 9295.845000 9449.859000 9636.87600  9435.191000 8811.801000 10461.951000    9922.902000 10263.933000    13127.860000    15240.052000    16101.797000    16186.13800 16530.000000    18300.000000    18470.000000    17080.000000    15960.000000    15480.000000    14860.000000    13830.000000    14070.000000    15820.000000    13700.000000    13900.000000    12490.000000    10180.000000    9770.000000 10510.000000    9830.000000 9760.000000 7600.000000 7750.000000 9810.000000 11490.000000    12110.000000    12360.000000    12150.000000    12400.000000    10990.000000    10230.000000    12270.000000    NaN NaN
266 rows × 61 columns

但不是每一列都是年份,我希望数据格式如下:经济,年份,价值

我想我需要调整表格,但我不知道如何调整才能使年份和经济与价值保持一致。

欢迎任何建议。

4

1 回答 1

3

尝试使用stack

out = df.stack().reset_index()
于 2021-08-25T00:34:19.947 回答