python矩阵处理库_用于处理非常大的矩阵的Python库
什么是用于处理非常大的矩阵(例如数百万行/列)的优秀
Python库,包括在矩阵生命的任何阶段添加行或列的能力?
我查看过pytables和h5py,但是一旦创建了矩阵,它们都不支持添加或删除行或列.
我能找到的另一件事是these questions中提到的numpy / scipy中的稀疏矩阵功能.但是,添加/删除行和列的能力似乎可能但是官方不支持和有点hacky,所以我担心性能会真正的数据集是可怕的.此外,它包括几个不同的稀疏矩阵实现,所以我很困惑哪一个是最好的(例如lil_matrix vs csc_matrix vs csr_matrix).
最佳答案 如果您的矩阵是稀疏的,您可以添加或删除行或列,而不用使用scipy.sparse进行操作.如果要删除列(进行列切片),则应该使用csc_matrix,而csr_matrix应该用于有效的行切片.通常使用coo_matrix类型创建稀疏矩阵很方便,您可以在其中为每个非零条目指定行,列和数据:
m = coo_matrix((data, (row, col)), shape=(nrow, ncol))
m = m.to_csr()[rows_to_keep, :]
m = m.to_csc()[:, cols_to_keep]
其中rows_to_keep可以是列表或具有要保留的索引的1-D数组.
如果需要密集矩阵,可以使用numpy.memmap()数组.要创建一个,你可以做:
a = np.memmap('test.memmap', dtype='float64', mode='w+', shape=(1000, 1000))
a.fill(100.)
要阅读一个你可以做的:
a = np.memmap('a.memmap', dtype='float64', mode='r+', shape=(1000, 1000))
如果要删除或添加行和列,则必须创建第二个memmap数组,然后从原始列分配所需的列:
b = np.memmap('b.memmap', dtype='float64', mode='w+', shape=(3, 1000))
b = a[[0, 99, 199], :]
这将在b中保存所有列的第一行,第100行和第200行.
python矩阵处理库_用于处理非常大的矩阵的Python库相关推荐
- python 三维地球库_用于GIS(地理信息系统)和三维可视化制图的Python库
前言 Python库是GIS中的终极扩展,因为它允许您增强其核心功能. 通过使用Python库,您可以摆脱GIS的束缚,而深入研究一些严肃的数据科学. Python中有200多个标准库.但是也有成千上 ...
- python大神作品_掌握了这24个顶级Python库,你就是大神!
全文共11815字,预计学习时长24分钟 Python有以下三个特点: · 易用性和灵活性 · 全行业高接受度:Python无疑是业界最流行的数据科学语言 · 用于数据科学的Python库的数量优势 ...
- python动态交互式图表库_五个创建交互式图表的Python库
数据可视化专家Andy Kirk说过,数据可视化分为两类:探索性可视化图表和解释性可视化图表.解释性可视化图表的目标是进行描述--它们是根据对事物表面的关键线索而被仔细构造出来的. 另一方面,探索性可 ...
- python全栈测试开发_用于全栈自动化测试的最佳Python工具
我知道大多数测试人员会说Java是他们创建自动化测试的首选语言. 但是我最喜欢的是Python.为什么?为什么是Python ? Al Sweigart,<自动化那些无聊的东西>的作者,P ...
- python中集合运算_入门 | 一文带你了解Python集合与基本的集合运算
原标题:入门 | 一文带你了解Python集合与基本的集合运算 选自DataCamp 作者:Michael Galarnyk 参与:Geek Ai.思源 一般我们熟悉 Python 中列表.元组及字典 ...
- python协同过滤算法_协同过滤(ALS)的原理及Python实现
提到ALS相信大家应该都不会觉得陌生(不陌生你点进来干嘛[捂脸]),它是协同过滤的一种,并被集成到Spark的Mllib库中.本文就ALS的基本原理进行讲解,并手把手.肩并肩地带您实现这一算法. 完整 ...
- python 进程生命周期_计算客户生命周期价值的python解决方案
python 进程生命周期 By Lisa Cohen, Zhining Deng, Shijing Fang, and Ron Sielinski 由丽莎·科恩,志宁邓,石井方和罗恩Sielinsk ...
- 吃鸡是python写的吗_吃鸡游戏也是用Python写的?学了Python,120个月年终奖向你招手~...
原标题:吃鸡游戏也是用Python写的?学了Python,120个月年终奖向你招手~ 吃鸡游戏火爆全球,已经把腾讯的<王者荣耀>都比下去了,有传言,腾讯给"王者荣耀"开 ...
- 用python画奥迪标志_不知道不 OK!53 个 Python 经典面试题详解
作者 | Chris 翻译 | 苏本如,责编 | 夕颜 头图 | CSDN付费下载自视觉中国 出品 | CSDN(ID:CSDNnews) 以下为译文: 本文列出53个Python面试问题,并且提供了 ...
最新文章
- 360导入html没有,IE无法加载到外部CSS样式, 用360浏览器就可以,上CSS引用代码[急]_html/css_WEB-ITnose...
- 黑马程序员pink老师前端入门教程,零基础必看的h5(html5)+css3+移动端前端视频教程(定位,显示与隐藏)
- Redis命令参考简体中文版
- 解惑图数据库!你知道什么是图数据库吗?
- 金蝶凭证序时簿在哪_来了!金蝶日常账务处理大全
- BufferedWriterTest
- Redis 学习---(4)Redis 数据类型
- 特斯拉下一代Roadster跑车生产时间再度推迟至2023年
- 天池学习赛:工业蒸汽量预测1——数据探索
- 3项目估算表_浮动油封生产项目可行性研究报告
- (1)数据库和MySql初步认识
- 【一分钟知识】七种损失函数
- javascript基础案例解析
- ROS 教程之navigation: 用程序设定导航目标点
- 《游戏学习》HTML5全民飞机大战小游戏实战源码
- JS实现复制到剪贴板功能
- matlab变电站仿真,基于Matlab Simulink的110kV变电系统建模及故障仿真分析
- java程序员自荐信_【程序员英文的自荐信】程序员优秀员工自荐信
- 计算机设计大赛软件开发类作品填写模板
- matlab中ode的用法,关于matlab 的ode45用法
热门文章
- 手把手教你生信分析平台搭建
- 合川专升本计算机怎么学升学率,2019年重庆市合川太和中学高考喜报
- R语言ggplot2可视化时间序列散点图、X轴和Y轴都是时间信息、使用as.POSIXct函数自定义指定Y轴的时间范围(setting time limits in y axis)
- R语言data.table导入数据实战:data.table中编写函数并使用SD数据对象
- python使用matplotlib可视化、自定义移除X轴指定轴刻度标签(removing specific axis ticks in matplotlib x axis)
- Pandas中xs()函数索引复合索引数据的不同切面数据(索引复合索引中需要的数据):索引列复合索引中的一个切面、索引行复合索引中的一个切面
- R语言使用knitr生成机器学习模型全流程步骤示例:knitr与自动化结果报告、knitr常用参数
- 如何获取数据库中标的所有字段和数据类型?
- R语言生存分析寿命表(life table)实战案例:比较两种药物治疗感染患者的生存时间
- R双样本t检验(WELCH TWO-SAMPLE T-TEST)