Pandas创建DataFrame提示:type object 'object' has no attribute 'dtype'解决方案

作者:779醒 时间:2022-08-06 16:33:18 

发现问题

pandas版本0.25.3

import pandas as pd

symbol_info_columns = ['1', '持仓方向', '持仓量', '持仓收益率', '持仓收益', '持仓均价', '当前价格', '最大杠杆']  # v3
symbol_config = {'BTC': 'BTC-USDT-210924', 'LTC': 'LTC-USDT-210924', 'EOS': 'EOS-USDT-210924', 'ETH': 'ETH-USDT-210924', 'XRP': 'XRP-USDT-210924', 'FIL': 'FIL-USDT-210924'}
symbol_info = pd.DataFrame()
# dates = pd.date_range('20190101', periods=6)
# num_df = pd.DataFrame(data=np.random.randn(6, 8), index=dates, columns=symbol_info_columns)
symbol_info = pd.DataFrame(index=symbol_config.keys(), columns=symbol_info_columns)

data为空,且dtype默认为空时

出现type object ‘object’ has no attribute 'dtype’告警

Pandas创建DataFrame提示:type object 'object' has no attribute 'dtype'解决方案

原因分析:

创建DataFrame时,data字段为空

会默认创建一个空字典作为data

def __init__(self, data=None, index=None, columns=None, dtype=None, copy=False):
       if data is None:
           data = {}

然后初始化字典

elif isinstance(data, dict):
   mgr = init_dict(data, index, columns, dtype=dtype)

init_dict函数中:

columns非空,且dtype默认为None时,会赋值nan_dtype = object

if columns is not None:
if missing.any() and not is_integer_dtype(dtype):
   if dtype is None or np.issubdtype(dtype, np.flexible):
       # GH#1783
       nan_dtype = object

该object下无dtype方法

可能是object引用错误

解决方案:

pandas(版本0.25.3)init_dict函数位于

D:\Users\。。。\Anaconda3\envs\Python3.7\Lib\site-packages\pandas\core\internals\construction.py

参考Python3.9环境中pandas(版本1.2.5)

同名函数(D:\Users\。。。\Anaconda3\envs\Python3.7\Lib\site-packages\pandas\core\internals\construction.py)写法

nan_dtype = np.dtype(object)

可见该问题应该是pandas(版本0.25.3)的bug

来源:https://blog.csdn.net/chenbaixing/article/details/118872809

标签:pandas,dataframe,告警
0
投稿

猜你喜欢

  • Python实现学生管理系统并生成exe可执行文件详解流程

    2023-03-11 04:52:42
  • Mysql InnoDB聚簇索引二级索引联合索引特点

    2024-01-26 23:02:55
  • 用 onerror 获取错误信息 js Debug

    2008-11-03 19:08:00
  • 如何远程连接SQL Server数据库图文教程

    2024-01-21 16:23:30
  • Python subprocess模块详细解读

    2023-11-17 02:50:01
  • 如何使用PyCharm及常用配置详解

    2021-09-22 14:59:47
  • django用户登录和注销的实现方法

    2021-01-17 13:55:40
  • 不错的广告定位效果代码

    2009-06-05 18:51:00
  • python应用Axes3D绘图(批量梯度下降算法)

    2023-04-19 11:41:45
  • [译]“我心中的ebay”

    2008-06-04 12:09:00
  • Python使用Crypto库实现加密解密的示例详解

    2021-11-10 05:53:10
  • Python使用paramiko连接远程服务器执行Shell命令的实现

    2023-01-19 15:25:39
  • 详解用 python-docx 创建浮动图片

    2021-07-16 13:32:12
  • 如何关掉pycharm中的python console(图解)

    2023-01-28 05:54:35
  • vue prop属性传值与传引用示例

    2024-05-10 14:10:16
  • PHP多种序列化/反序列化的方法详解

    2024-04-30 08:47:55
  • Python编程flask使用页面模版的方法

    2023-08-23 19:01:55
  • AXObject解决IE需要激活 ActiveX 控件方法

    2007-11-08 12:16:00
  • 详解用python自制微信机器人,定时发送天气预报

    2023-05-12 14:27:29
  • 随感:交互设计两三事

    2009-05-18 13:54:00
  • asp之家 网络编程 m.aspxhome.com