1
我有一個名爲DF1和DF2兩隻大熊貓DataFrames,其定義如下:如何將三重DataFrame轉換爲不重複行的新DataFrame?
>> df1 = pd.DataFrame({
'id': ['A', 'A', 'A', 'B', 'B', 'C', 'C'],
'year': [2015, 2016, 2017, 2016, 2017, 2015, 2017],
'amount': [1, 2, 3, 4, 5, 6, 7] })
>> df2 = pd.DataFrame({
'id': ['A', 'B', 'C'],
'2015': [1, np.NaN, 6],
'2016': [2, 4, np.NaN],
'2017': [3, 5, 7] })
>> df1
amount id year
0 1 A 2015
1 2 A 2016
2 3 A 2017
3 4 B 2016
4 5 B 2017
5 6 C 2015
6 7 C 2017
>> df2
2015 2016 2017 id
0 1.0 2.0 3 A
1 NaN 4.0 5 B
2 6.0 NaN 7 C
正如你可以看到,這兩個DataFrames包含相同的信息。 DataFrame df1是三元組,而df2是DataFrame,其字段ID中沒有重複值。
我的問題是如何使用大熊貓DF1以有效的方式DF2轉換(不for循環)? 那麼df2到df1怎麼樣?
你只需要'pivot'。 'df1.pivot('id','year','amount')' – Psidom