当前位置: 首页 > news >正文

DataFrame插入多列PerformanceWarning: DataFrame is highly fragmented.

DataFrame插入多列PerformanceWarning: DataFrame is highly fragmented.

dataframe列比较多,增加列的代码如下:

df=pd.DataFrame()
for i in range(1000):vlist=[]for j in range(1000):vlist.append(j)     df['COL_' + str(i)] =  vlistdf

警告错误:

/tmp/ipykernel_27622/2631638338.py:7: PerformanceWarning: DataFrame is highly fragmented. This is usually the result of calling frame.insert many times, which has poor performance. Consider joining all columns at once using pd.concat(axis=1) instead. To get a de-fragmented frame, use newframe = frame.copy()

df[‘COL_’ + str(i)] = vlist 就是insert ,提示碎片多,执行的时间长。
按提示,用pd.concat(axis=1) 增加列数据。
做一个中间的dataframe变量,通过pd.concat()将两个dataframe变量合并,赋值到df变量中,解决insert效率低,碎片多的警告错误。

df=pd.concat([df,frames], axis=1)

修改后代码如下:

df=pd.DataFrame()
for i in range(1000):vlist=[]for j in range(1000):vlist.append(j)     frames = pd.DataFrame(pd.Series(vlist),columns=['COL_' + str(i)])df=pd.concat([df,frames], axis=1)df

运行速度快了不少,不再提示警告错误。

http://www.lryc.cn/news/176724.html

相关文章:

  • Springboot登录验证的统一拦截处理
  • 自定义类型详解(上)
  • 【数据库——MySQL】(9)函数、查询练习及讲解
  • 【数据结构与算法——C语言】“串操作与算法”之“找出最长串及其长度”
  • 泡泡玛特:一家中国潮玩品牌的出海之旅
  • 淘宝商品sku信息抓取接口api
  • MySQL 多表关系(多表查询 一)
  • 【面试高高手】——JavaIO篇(23题)
  • 图像采集 deep OCR
  • Linux 终端命令总结
  • 中国核动力研究设计院使用 DolphinDB 替换 MySQL 实时监控仪表
  • 速看!软考中项100条重要知识点集锦!
  • Pycharm在进行debug时出现collecting data如何解决?
  • 【算法分析与设计】算法概述
  • 如何进一步全面提高项目估算精准度?
  • Git学习笔记4
  • 【红外与可见光图像融合】离散平稳小波变换域中基于离散余弦变换和局部空间频率的红外与视觉图像融合方法(Matlab代码实现)
  • 成都睿趣科技:抖音开通橱窗带货需要钱吗
  • 中间件 - 分布式协调服务Zookeeper
  • golang的实用工具
  • 图层混合模式(三)
  • 蓝牙核心规范(V5.4)10.6-BLE 入门笔记之L2CAP
  • 【计算机网络】DNS原理介绍
  • Docker的基础命令
  • 提取项目依赖包的licenses
  • Vue项目自动转换px为rem-高保真还原设计图
  • rman备份到远程服务器
  • 数据结构与算法
  • 【Web3】DAO相关的基础知识
  • 一文教你学会ArcGIS Pro地图设计与制图系列全流程(3)