我有這本詞典:
d = {'a': (1,2,3), 'b': (4,5,6)}
我希望它形成一個資料框,其中鍵顯示為行及其相應的值,如下表所示:
| 鑰匙 | 價值觀 |
|---|---|
| 一種 | 1 |
| 一種 | 2 |
| 一種 | 3 |
| 乙 | 4 |
| 乙 | 5 |
有任何想法嗎?
uj5u.com熱心網友回復:
d = {'a': (1,2,3), 'b': (4,5,6)}
df = pd.DataFrame(d).unstack().droplevel(1).reset_index().rename({'index':'Keys', 0:'Values'}, axis=1)
輸出:
>>> df
Keys Values
0 a 1
1 a 2
2 a 3
3 b 4
4 b 5
5 b 6
uj5u.com熱心網友回復:
這是我的建議。
- 使用以下命令創建資料框:
df = pd.DataFrame({'Keys': list(dict.keys()), 'Values': list(dict.values())})
- 使用以下命令在“值”列上分解資料框:
df = df.explode(column='Values').reset_index(drop=True
輸出結果是這樣的:
Keys Values
0 a 1
1 a 2
2 a 3
3 b 4
4 b 5
5 b 6
uj5u.com熱心網友回復:
您可以unstack使用資料框reset_index并更改列名稱:
df = (pd.DataFrame(dictionary)
.unstack()
.reset_index()
.loc[:,['level_0',0]]
.rename(columns={'level_0':'keys',0:'values'}))
輸出:
keys values
0 a 1
1 a 2
2 a 3
3 b 4
4 b 5
5 b 6
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/373903.html
