简单的编程|pandas之DataFrame与Dict的相互转换
在使用pandas进行数据分析的时候,大多数情况下可以用read_csv、read_excel等函数读取数据。但是,有时候,我们面对的是字典形式的数据结构。在这种情况下,需要用到DataFrame与Dict之间的相互转换。
一、Dict转换为DataFrame
1、面向行
sales = [{"Fruits":"apple","Numbers":5},
{"Fruits":"banana","Numbers":8},
{"Fruits":"pear","Numbers":9}]
df = pd.DataFrame(sales)
在这种情形下,字典键被用作columns,索引index被自动生成。
Fruits | Numbers | |
0 | apple | 5 |
1 | banana | 8 |
2 | pear | 9 |
sales = {"Fruits":["apple","banana","pear"],
"Numbers":[5,8,9]}
df = pd.DataFrame.from_dict(sales)
【简单的编程|pandas之DataFrame与Dict的相互转换】使用此种方法得到的结果与上述上述结果相同。
二、DataFrame转换为Dict DataFrame转换为Dict主要用到to_dict(orient)函数。参数orient的值可以取dict、list、series、split、records、index等。这里我们主要讲解list、records两个参数值。假设DataFrame数据结构df如下:
Fruits | Numbers | |
0 | apple | 5 |
1 | banana | 8 |
2 | pear | 9 |
df.to_dict(orient='list')
得到的字典为:
2、参数为records{'Fruits': ['apple', 'banana', 'pear'], 'Numbers': [5, 8, 9]}
df.to_dict(orient='records')
得到的字典为
[{'Fruits': 'apple', 'Numbers': 5},
{'Fruits': 'banana', 'Numbers': 8},
{'Fruits': 'pear', 'Numbers': 9}]
推荐阅读
- 热闹中的孤独
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 放屁有这三个特征的,请注意啦!这说明你的身体毒素太多
- 一个人的旅行,三亚
- 布丽吉特,人生绝对的赢家
- 慢慢的美丽
- 尽力
- 一个小故事,我的思考。
- 家乡的那条小河
- 《真与假的困惑》???|《真与假的困惑》??? ——致良知是一种伟大的力量