【发布时间】:2021-08-22 03:01:10
【问题描述】:
我有两个数据框,我想使用 2 个键合并它们,其中一个将直接作为列
我有以下数据框:
DF:-
Sex Age Height country Year Grade
0 M 31.0 188.0 Bulgaria 2016 D+
1 F 28.0 166.0 China 1996 D+
2 M 30.0 NaN Sweden 1960 D+
3 F 28.0 181.0 China 2004 D+
4 F 16.0 175.0 Hungary 1998 D+
GDP 数据:
Country Name Country Code 2016 1996 1960 2004 1998
0 Bulgaria BGR 1946 NaN 5377 5285 NaN
1 China CHI 1186 3314 NaN 7314 3314
2 Sweden SWE 1590 4694 2723 8532 4694
3 China CHI 6580 NaN NaN 5120 NaN
4 Hungary HUN 2858 1223 NaN 2935 1223
合并后所需的Dataframe是:-
Sex Age Height country Year Grade GDP
0 M 31.0 188.0 Bulgaria 2016 D+ 1946
1 F 28.0 166.0 China 1996 D+ 3314
2 M 30.0 NaN Sweden 1960 D+ 2723
3 F 28.0 181.0 China 2004 D+ 5120
4 F 16.0 175.0 Hungary 1998 D+ 1223
生成的 DataFrame 应该得到国家相对于年份的 GDP。
我需要分别匹配 DF 和 GDP_data 中的 Country Name 和 country 以及第一个 DataFrame 中的 Year 列,但在第二个 DataFrame 中我有年份作为列。
如何合并这两者?
这只是我在这里展示的示例数据,但实际上它是非常大的数据,大约有 20000 行和从 1960 年到 2016 年的 gdp 数据。但想法应该是一样的。
【问题讨论】:
-
你是怎么得到两个相同的列
1996的? -
这是一个错误我会编辑它
-
Google for
melt函数 -
在 GDP 数据数据框中,您有 2 行 China 作为 Country Name,Year 作为 2004,应该选择哪一个?此问题有很多灰色区域,请查看并编辑您的问题
-
在这两个条目中,一个是中国 1996 年的 GDP,另一个是 2004 年