Afghanistan Fertilizer Use Data (1961-1966): Long Format
import pandas as pd
# 原始数据
data = {
'Area': ['Afghanistan', 'Afghanistan', 'Afghanistan', 'Afghanistan', 'Afghanistan', 'Afghanistan'],
'Element': ['Production', 'Import Quantity', 'Export Quantity', 'Agricultural Use', 'Use per area of cropland', 'Use per capita'],
'Y1961': [None, 1000, None, 1000, 0.13, 0.11],
'Y1962': [None, 1000, None, 1000, 0.13, 0.11],
'Y1963': [None, 1000, None, 1000, 0.13, 0.11],
'Y1964': [None, 1000, None, 1000, 0.13, 0.11],
'Y1965': [None, 1000, None, 1000, 0.13, 0.1],
'Y1966': [None, 1000, None, 1000, 0.13, 0.1]
}
# 转换为长数据格式
df = pd.DataFrame(data)
df_long = df.melt(id_vars=['Area', 'Element'], var_name='Year', value_name='Value')
# 替换年份列的数值
df_long['Year'] = df_long['Year'].str.replace('Y', '').astype(int)
print(df_long)
输出结果为:
Area Element Year Value
0 Afghanistan Production 1961 None
1 Afghanistan Import Quantity 1961 1000
2 Afghanistan Export Quantity 1961 None
3 Afghanistan Agricultural Use 1961 1000
4 Afghanistan Use per area of cropland 1961 0.13
5 Afghanistan Use per capita 1961 0.11
6 Afghanistan Production 1962 None
7 Afghanistan Import Quantity 1962 1000
8 Afghanistan Export Quantity 1962 None
9 Afghanistan Agricultural Use 1962 1000
10 Afghanistan Use per area of cropland 1962 0.13
11 Afghanistan Use per capita 1962 0.11
12 Afghanistan Production 1963 None
13 Afghanistan Import Quantity 1963 1000
14 Afghanistan Export Quantity 1963 None
15 Afghanistan Agricultural Use 1963 1000
16 Afghanistan Use per area of cropland 1963 0.13
17 Afghanistan Use per capita 1963 0.11
18 Afghanistan Production 1964 None
19 Afghanistan Import Quantity 1964 1000
20 Afghanistan Export Quantity 1964 None
21 Afghanistan Agricultural Use 1964 1000
22 Afghanistan Use per area of cropland 1964 0.13
23 Afghanistan Use per capita 1964 0.11
24 Afghanistan Production 1965 None
25 Afghanistan Import Quantity 1965 1000
26 Afghanistan Export Quantity 1965 None
27 Afghanistan Agricultural Use 1965 1000
28 Afghanistan Use per area of cropland 1965 0.13
29 Afghanistan Use per capita 1965 0.1
30 Afghanistan Production 1966 None
31 Afghanistan Import Quantity 1966 1000
32 Afghanistan Export Quantity 1966 None
33 Afghanistan Agricultural Use 1966 1000
34 Afghanistan Use per area of cropland 1966 0.13
35 Afghanistan Use per capita 1966 0.1
原文地址: https://www.cveoy.top/t/topic/fua6 著作权归作者所有。请勿转载和采集!