python更改行的列

2024-06-10 04:21:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我只看到了与我在这里寻找的东西相反的帖子。使用jupyter notebooks/python,我从csv文件导入了第一个块,我想要第二个块:

    Country | 1990 | 1991 | 1992 |
 ----------------------------------
  | Albania |   1.0 | 1.2 | 2.6 |
  | Algeria |   2.0 | 2.3 | 3.3 |
  | Andora  |   1.5 | 6.9 | 5.3 |


   Country   | Year | Value | 
 ------------------------------
  | Albania  | 1990 |  1.0  | 
  | Albania  | 1991 |  1.2  | 
  | Albania  | 1992 |  2.6  | 
  | Algeria  | 1990 |  2.0  | 
  | Algeria  | 1990 |  2.3  | 
  | Algeria  | 1990 |  3.3  | 
etc.

我是python新手,不确定是否需要使用pandas、numpy以及什么函数(pivot_table、re index、interpolate)。
谢谢


Tags: 文件csvnumpypandasvalueetcjupyteryear
2条回答

大熊猫的融化功能就可以了!!

import pandas as pd

df = pd.DataFrame({'Year': [1990 , 1991 , 1992], 'Albania': [1.0 , 1.2 , 2.6 ],'Algeria':[2.0,2.3,3.3],"Andora":[1.5,6.9,5.3]})



print df
          Albania  Algeria  Andora  Year
    0      1.0      2.0     1.5  1990
    1      1.2      2.3     6.9  1991
    2      2.6      3.3     5.3  1992

熔融重塑df相对于年份!!

^{pr2}$

我把你的测向搞砸了,你的案子也一样。 有关熔融的更多信息http://pandas.pydata.org/pandas-docs/stable/generated/pandas.melt.html

试试这个:

import pandas as pd

df = pd.read_csv('my-csv.csv')
new_df = df.set_index('Country').stack()

相关问题 更多 >