pandas读取字典(dict)数据

pandas读取字典(dict)数据

 

pandas.DataFrame.from_dict

 

# 默认orient ='columns'

# 默认orient ='columns'
data = {'col_1': [3, 2, 1, 0], 'col_2': ['a', 'b', 'c', 'd']}
pd.DataFrame.from_dict(data)

#设置orient = index

data = {'row_1': [3, 2, 1, 0], 'row_2': ['a', 'b', 'c', 'd']}
pd.DataFrame.from_dict(data, orient='index')

# 注意只有是orient = 'index'的时候才可以手动指定列名称, 否则会报错

# 注意只有是orient = 'index'的时候才可以手动指定列名称
pd.DataFrame.from_dict(data, orient='index',
                       columns=['A', 'B', 'C', 'D'])

# 错误代码

# 注意只有是orient = 'index'的时候才可以手动指定列名称
pd.DataFrame.from_dict(data, orient='columns',
                       columns=['A', 'B', 'C', 'D'])
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-80-4b25eb1c16ee> in <module>
      1 # 注意只有是orient = 'index'的时候才可以手动指定列名称
      2 pd.DataFrame.from_dict(data, orient='columns',
----> 3                        columns=['A', 'B', 'C', 'D'])

D:\anaconda\lib\site-packages\pandas\core\frame.py in from_dict(cls, data, orient, dtype, columns)
   1303         elif orient == "columns":
   1304             if columns is not None:
-> 1305                 raise ValueError("cannot use columns parameter with orient='columns'")
   1306         else:  # pragma: no cover
   1307             raise ValueError("only recognize index or columns for orient")

ValueError: cannot use columns parameter with orient='columns'

 

 

# 使用faker包生成仿真数据(dict,字典格式)并使用pandas读取

# !pip install faker
from faker import Faker
fake = Faker()

 #生成一个人相关的详细信息,以字典的形式进行组织
fake.profile()

# 生成字典并使用pandas读取

pd.DataFrame.from_dict(fake.profile(),orient = 'index')

# 获取dict的键

columns = list(fake.profile().keys())
columns

# pandas读取dict数据并进行转置

pd.DataFrame.from_dict(fake.profile(),orient = 'index').T

# 生成多条仿真数据并用pandas dataframe进行读取

#通过for循环把faker生成的数据组织起来存放在pandas dataframe中
# 生成list of dict
people_list = []
for i in range(10):
    people_list.append(fake.profile())


df = pd.DataFrame(people_list)
df.head(1)


 

 

 

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
在使用pandas读取Excel数据并转化为字典时,可以使用`read_excel`函数。读取Excel文件的语法如下: ``` import pandas as pd dataframe = pd.read_excel('文件路径', sheet_name='工作表名称') ``` 其中,`文件路径`是Excel文件的路径,可以是绝对路径或相对路径;`工作表名称`是要读取的工作表的名称,可以是字符串的形式指定工作表的名称,也可以是整数指定工作表的索引(默认值为0,即第一个工作表)。 读取后的数据会保存在一个`DataFrame`对象中。接下来,可以使用`to_dict`方法将`DataFrame`转化为字典形式,具体语法如下: ``` data_dict = dataframe.to_dict() ``` `to_dict`方法可以接收多个参数,用于指定字典的具体结构。一些常用的参数包括: - `orient`: 设置字典的结构,默认值为`'dict'`,表示每列的值以列名作为键,将所有列组合成一个字典。另外还支持`'list'`、`'series'`、`'split'`等结构。 - `into`: 设置字典的格式,默认值为`dict`,表示返回一个`dict`对象。另外还支持`'list'`、`'series'`、`'split'`等格式。 下面是一个简单的示例,演示了如何使用pandas读取Excel数据并转化为字典: ```python import pandas as pd # 读取Excel数据 dataframe = pd.read_excel('data.xlsx', sheet_name='Sheet1') # 将DataFrame转化为字典 data_dict = dataframe.to_dict() # 打印字典数据 print(data_dict) ``` 以上就是使用pandas读取Excel数据并转化为字典的方法。注意,读取Excel文件前需要安装pandas库,可以使用`pip install pandas`命令进行安装。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Data+Science+Insight

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值