Python3-读取数据并转为dict

2023-01-31 01:01:48 python3

0x01 摘要

有时候我们想读取数据并直接转为字典的列表,下面介绍通过pandas.DataFrame.to_dic的实现方法。

0x02 原始数据

import numpy as np
import pandas as pd
music_info = pd.read_table('musics.txt')
print('数据预览:', music_info.head())
print('样本个数:', len(music_info))

结果如下:

数据预览:   music_name  score
0       浪人琵琶    7.4
1        套马杆    8.8
2       真的爱你    9.5
3       再见理想    9.2
4       光辉岁月    9.3
样本个数: 10

0x03 不带序号的字典列表

python代码如下:

music_dict_list = music_info.to_dict(orient="records")
print(music_dict_list)

结果如下:

[{'music_name': '浪人琵琶', 'score': 7.4}, 
{'music_name': '套马杆', 'score': 8.8}, 
{'music_name': '真的爱你', 'score': 9.5}, 
{'music_name': '再见理想', 'score': 9.2}, 
{'music_name': '光辉岁月', 'score': 9.3}, 
{'music_name': '无尽空虚', 'score': 9.3}, 
{'music_name': '不再犹豫', 'score': 9.8}, 
{'music_name': '海阔天空', 'score': 9.4}, 
{'music_name': '最炫民族风', 'score': 8.5}, 
{'music_name': '老鼠爱大米', 'score': 8.4}]

0x04 带序号的字典列表

music_dict_list = music_info.to_dict(orient="index")
print(music_dict_list)

结果如下:

{0: {'music_name': '浪人琵琶', 'score': 7.4}, 
1: {'music_name': '套马杆', 'score': 8.8}, 
2: {'music_name': '真的爱你', 'score': 9.5}, 
3: {'music_name': '再见理想', 'score': 9.2}, 
4: {'music_name': '光辉岁月', 'score': 9.3}, 
5: {'music_name': '无尽空虚', 'score': 9.3}, 
6: {'music_name': '不再犹豫', 'score': 9.8}, 
7: {'music_name': '海阔天空', 'score': 9.4}, 
8: {'music_name': '最炫民族风', 'score': 8.5}, 
9: {'music_name': '老鼠爱大米', 'score': 8.4}}

0xFF 参考文档

pandas.DataFrame.to_dict
pandas to_dict 的用法

相关文章