pandas100个骚操作:再见 for 循环!速度提升315倍!

chatgpt赋能python:如何加速Python中的for循环操作? 本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。🧡AI职场汇报智能办公文案写作效率提升教程 🧡专注于AI+职场+办公方向。下图是课程的整体大纲下图是AI职场汇报智能办公文案写作效率提升教程中用到的ai工具。 阅读详情


下面是一个例子,数据获取方式见文末。

>>> import pandas as pd
# 导入数据集
>>> df = pd.read_csv('demand_profile.csv')
>>> df.head()
     date_time  energy_kwh
0  1/1/13 0:00       0.586
1  1/1/13 1:00       0.580
2  1/1/13 2:00       0.572
3  1/1/13 3:00       0.596
4  1/1/13 4:00       0.592

基于上面的数据,我们现在要增加一个新的特征,但这个新的特征是基于一些时间条件生成的,根据时长(小时)而变化,如下:

因此,如果你不知道如何提速,那正常第一想法可能就是用apply方法写一个函数,函数里面写好时间条件的逻辑代码。

def apply_tariff(kwh, hour):
    """计算每个小时的电费"""    
    if 0 <= hour < 7:
        rate = 12
    elif 7 <= hour < 17:
        rate = 20
    elif 17 <= hour < 24:
        rate = 28
    else:
        raise ValueError(f'Invalid hour: {hour}')
    return rate * kwh

然后使用for循环来遍历df,根据apply函数逻辑添加新的特征,如下:

>>> # 不赞同这种操作
>>> @timeit(repeat=3, number=100)
... def apply_tariff_loop(df):
...     """用for循环计算enery cost,并添加到列表"""
...     energy_cost_list = []
...     for i in range(len(df)):
...         # 获取用电量和时间(小时)
...         energy_used = df.iloc[i]['energy_kwh']
...         hour = df.iloc[i]['date_time'].hour
...         energy_cost = apply_tariff(energy_used, hour)
...         energy_cost_list.append(energy_cost)
...     df['cost_cents'] = energy_cost_list
... 
>>> apply_tariff_loop(df)
Best of 3 trials with 100 function calls per trial:
Function `apply_tariff_loop` ran in average of 3.152 seconds.

对于那些写Pythonic风格的人来说,这个设计看起来很自然。然而,这个循环将会严重影响效率。原因有几个:

首先,它需要初始化一个将记录输出的列表。

其次,它使用不透明对象范围(0,len(df))循环,然后再应用apply_tariff()之后,它必须将结果附加到用于创建新DataFrame列的列表中。另外,还使用df.iloc [i]['date_time']执行所谓的链式索引,这通常会导致意外的结果。

这种方法的最大问题是计算的时间成本。对于8760行数据,此循环花费了3秒钟。

接下来,一起看下优化的提速方案。

一、使用 iterrows循环

第一种可以通过pandas引入iterrows方法让效率更高。这些都是一次产生一行的生成器方法,类似scrapy中使用的yield用法。

.itertuples为每一行产生一个namedtuple,并且行的索引值作为元组的第一个元素。nametuple是Python的collections模块中的一种数据结构,其行为类似于Python元组,但具有可通过属性查找访问的字段。

.iterrows为DataFrame中的每一行产生(index,series)这样的元组。

在这个例子中使用.iterrows,我们看看这使用iterrows后效果如何。

>>> @timeit(repeat=3, number=100)
... def apply_tariff_iterrows(df):
...     energy_cost_list = []
...     for index, row in df.iterrows():
...         # 获取用电量和时间(小时)
...         energy_used = row['energy_kwh']
...         hour = row['date_time'].hour
...         # 添加cost列表
...         energy_cost = apply_tariff(energy_used, hour)
...         energy_cost_list.append(energy_cost)
...     df['cost_cents'] = energy_cost_list
...
>>> apply_tariff_iterrows(df)
Best of 3 trials with 100 function calls per trial:
Function `apply_tariff_iterrows` ran in average of 0.713 seconds.

这样的语法更明确,并且行值引用中的混乱更少,因此它更具可读性。

时间成本方面:快了近5倍!

但是,还有更多的改进空间,理想情况是可以用pandas内置更快的方法完成。

二、pandas的apply方法

我们可以使用.apply方法而不是.iterrows进一步改进此操作。pandas的.apply方法接受函数callables并沿DataFrame的轴(所有行或所有列)应用。下面代码中,lambda函数将两列数据传递给apply_tariff():

>>> @timeit(repeat=3, number=100)
... def apply_tariff_withapply(df):
...     df['cost_cents'] = df.apply(
...         lambda row: apply_tariff(
...             kwh=row['energy_kwh'],
...             hour=row['date_time'].hour),
...         axis=1)
...
>>> apply_tariff_withapply(df)
Best of 3 trials with 100 function calls per trial:
Function `apply_tariff_withapply` ran in average of 0.272 seconds.

apply的语法优点很明显,行数少,代码可读性高。在这种情况下,所花费的时间大约是iterrows方法的一半。

但是,这还不是“非常快”。一个原因是apply()将在内部尝试循环遍历Cython迭代器。但是在这种情况下,传递的lambda不是可以在Cython中处理的东西,因此它在Python中调用并不是那么快。

如果我们使用apply()方法获取10年的小时数据,那么将需要大约15分钟的处理时间。如果这个计算只是大规模计算的一小部分,那么真的应该提速了。这也就是矢量化操作派上用场的地方。

三、矢量化操作:使用.isin选择数据

什么是矢量化操作?

如果你不基于一些条件,而是可以在一行代码中将所有电力消耗数据应用于该价格:df ['energy_kwh'] * 28,类似这种。那么这个特定的操作就是矢量化操作的一个例子,它是在pandas中执行的最快方法。

但是如何将条件计算应用为pandas中的矢量化运算?

一个技巧是:根据你的条件,选择和分组DataFrame,然后对每个选定的组应用矢量化操作。

在下面代码中,我们将看到如何使用pandas的.isin()方法选择行,然后在矢量化操作中实现新特征的添加。在执行此操作之前,如果将date_time列设置为DataFrame的索引,会更方便:

# 将date_time列设置为DataFrame的索引
df.set_index('date_time', inplace=True)

@timeit(repeat=3, number=100)
def apply_tariff_isin(df):
    # 定义小时范围Boolean数组
    peak_hours = df.index.hour.isin(range(17, 24))
    shoulder_hours = df.index.hour.isin(range(7, 17))
    off_peak_hours = df.index.hour.isin(range(0, 7))

    # 使用上面apply_traffic函数中的定义
    df.loc[peak_hours, 'cost_cents'] = df.loc[peak_hours, 'energy_kwh'] * 28
    df.loc[shoulder_hours,'cost_cents'] = df.loc[shoulder_hours, 'energy_kwh'] * 20
    df.loc[off_peak_hours,'cost_cents'] = df.loc[off_peak_hours, 'energy_kwh'] * 12

我们来看一下结果如何。

>>> apply_tariff_isin(df)
Best of 3 trials with 100 function calls per trial:
Function `apply_tariff_isin` ran in average of 0.010 seconds.

提示,上面.isin()方法返回的是一个布尔值数组,如下:

[False, False, False, ..., True, True, True]

布尔值标识了DataFrame索引datetimes是否落在了指定的小时范围内。然后把这些布尔数组传递给DataFrame的.loc,将获得一个与这些小时匹配的DataFrame切片。然后再将切片乘以适当的费率,这就是一种快速的矢量化操作了。

上面的方法完全取代了我们最开始自定义的函数apply_tariff(),代码大大减少,同时速度起飞。

运行时间比Pythonic的for循环快315倍,比iterrows快71倍,比apply快27倍!

四、还能更快?

太刺激了,我们继续加速。

在上面apply_tariff_isin中,我们通过调用df.loc和df.index.hour.isin三次来进行一些手动调整。如果我们有更精细的时间范围,你可能会说这个解决方案是不可扩展的。但在这种情况下,我们可以使用pandas的pd.cut()函数来自动完成切割:

@timeit(repeat=3, number=100)
def apply_tariff_cut(df):
    cents_per_kwh = pd.cut(x=df.index.hour,
                           bins=[0, 7, 17, 24],
                           include_lowest=True,
                           labels=[12, 20, 28]).astype(int)
    df['cost_cents'] = cents_per_kwh * df['energy_kwh']

上面代码pd.cut()会根据bin列表应用分组。

其中include_lowest参数表示第一个间隔是否应该是包含左边的。

这是一种完全矢量化的方法,它在时间方面是最快的:

>>> apply_tariff_cut(df)
Best of 3 trials with 100 function calls per trial:
Function `apply_tariff_cut` ran in average of 0.003 seconds.

到目前为止,使用pandas处理的时间上基本快达到极限了!只需要花费不到一秒的时间即可处理完整的10年的小时数据集。

但是,最后一个其它选择,就是使用 NumPy,还可以更快!

五、使用Numpy继续加速

使用pandas时不应忘记的一点是Pandas的Series和DataFrames是在NumPy库之上设计的。并且,pandas可以与NumPy阵列和操作无缝衔接。

下面我们使用NumPy的 digitize()函数更进一步。它类似于上面pandas的cut(),因为数据将被分箱,但这次它将由一个索引数组表示,这些索引表示每小时所属的bin。然后将这些索引应用于价格数组:

@timeit(repeat=3, number=100)
def apply_tariff_digitize(df):
    prices = np.array([12, 20, 28])
    bins = np.digitize(df.index.hour.values, bins=[7, 17, 24])
    df['cost_cents'] = prices[bins] * df['energy_kwh'].values

与cut函数一样,这种语法非常简洁易读。

>>> apply_tariff_digitize(df)
Best of 3 trials with 100 function calls per trial:
Function `apply_tariff_digitize` ran in average of 0.002 seconds.

0.002秒! 虽然仍有性能提升,但已经很边缘化了。

以上就是本次加速的技巧分享。样本数据可在公众号回复:加速 获取。

如果喜欢这样的骚操作,请给我点个赞和在看

推荐阅读:入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python  | 实战项目 |学Python就是这条捷径干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 |   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影年度爆款文案1).卧槽!Pdf转Word用Python轻松搞定!2).学Python真香!我用100行代码做了个网站,帮人PS旅行图片,赚个鸡腿吃3).首播过亿,火爆全网,我分析了《乘风破浪的姐姐》,发现了这些秘密 4).80行代码!用Python做一个哆来A梦分身 5).你必须掌握的20个python代码,短小精悍,用处无穷 6).30个Python奇淫技巧集 7).我总结的80页《菜鸟学Python精选干货.pdf》,都是干货 8).再见Python!我要学Go了!2500字深度分析!9).发现一个舔狗福利!这个Python爬虫神器太爽了,自动下载妹子图片
pandas多维聚合实战:银行级时间+空间+逻辑三维分析框架 多维聚合是结构化数据分析的核心能力,本质是将原始数据按业务维度(如区域、客户、产品)、时间维度(滚动窗口、累计周期)和逻辑维度(条件分组、自定义度量)进行协同建模。其技术原理在于利用pandas的向量化分组(groupby)、动态窗口(rolling/expanding)、多级透视(unstack/pivot_table)与函数化扩展(agg+apply)实现一次输入、多路输出。该能力直接支撑风控预警、客户分层、经营归因等高价值场景,在银行、保险、电商及SaaS行业尤为关键。本文聚焦真实生产环境中的五种原子 阅读详情

相关推荐

Pandas melt与pivot_table数据整形原理与实战

在数据分析中,宽表与长表是两种基础数据形态:宽表利于人眼阅读,长表才是机器学习、统计分析和时间序列建模的通用输入格式。其转换本质是数据结构的坐标系重构——melt实现从多维矩阵到原子化记录的降维表达,pivot_table则基于唯一性约束与聚合逻辑完成逆向升维重建。该过程承载着数据建模的核心思维:列名即维度、单元格即度量、重复即需聚合。掌握melt的无损拆解机制与pivot_table的健壮聚合能力,可高效处理销售报表、用户行为日志、多维指标监控等典型场景,显著减少手工循环与条件判断,提升ETL流程稳定性与

weixin_33739541的博客 320

再见 for 循环!pandas 提速 315 倍!

点击上方“Python爬虫与数据挖掘”,进行关注回复“书籍”即可获赠Python从入门到进阶共10本电子书今日鸡汤西陆蝉声唱,南冠客思深。来源:Python数据科学作者:东哥起飞上一篇分享...

pdcfighting的博客 817

从Pandas DataFrame到线上服务:用DeepCTR-Torch和PyTorch Serving部署CTR模型实战

本文详细介绍了如何将训练好的DeepCTR-Torch模型通过PyTorch Serving部署为线上服务,涵盖模型保存、格式转换、量化优化以及使用TorchServe和Flask API两种部署方案。文章还提供了性能优化技巧和监控维护策略,帮助开发者高效实现CTR模型的生产环境部署。

weixin_42526415的博客 82

[1224]Pandas常用的遍历方法

其中,iterrows方法返回一个迭代器,可以逐行遍历DataFrame,返回每一行数据的索引和值。总的来说,对于大型的 Pandas DataFrame,应该尽量避免使用循环遍历,而是使用 Pandas 内置的方法,如 apply() 和 applymap() 等。applymap() 方法可以应用一个函数到 DataFrame 中的每一个元素,返回一个新的 DataFrame。apply() 方法可以应用一个函数到 DataFrame 中的每一个元素,返回一个新的 DataFrame。

周小董 8228

AgentFly:不微调大模型,用结构化记忆提升AI智能体任务准确率

AI智能体(Agent)的核心能力并非仅依赖大语言模型参数更新,而在于任务编排、知识复用与确定性执行。传统微调方案易引发知识遗忘、成本高昂与结果不可控等问题;基于记忆的增强架构则通过结构化记忆库、双通道检索与确定性执行器,在保持LLM原生能力前提下,显著提升多步工具调用任务的准确性与稳定性。该范式契合GAIA等真实场景基准对逻辑编排、隐式约束处理与跨文档比对的要求,已在金融风控、政务问答与电商导购中验证其工程落地性与低维护成本优势。

sunjhgq的专栏 455

单机大数据处理新范式:Polars/DuckDB/Vaex/Modin选型指南

单机大数据处理正从Pandas时代迈向多引擎协同新阶段。其核心原理在于突破Python GIL限制、采用列式内存布局(如Arrow)、支持延迟计算与查询优化,从而实现CPU多核并行、IO高效利用和内存可控。这类工具的技术价值在于让GB至TB级数据在普通工作站上完成秒级交互分析,支撑实时特征工程、快速报表生成与探索式数据分析等关键场景。本文聚焦Polars、DuckDB、Vaex和Modin四大主流替代方案,结合真实业务负载对比其在读取、过滤、聚合、连接等典型操作中的性能表现与适用边界。

clijovtbq401783153的博客 366

pandas100个骚操作四:再见for循环!速度提升315倍,pandas速度优化方法

大家好,我是你们的东哥。 本篇是pandas100个骚操作的第4篇:再见for循环!速度提升315倍,pandas速度优化方法 查看全部骚操作可以点击专栏:pandas 100个骚操作 因为for是所有编程语言的基础语法,初学者为了快速实现功能,依懒性较强。但如果从优雅性和运算时间性能上考虑可能不是特别好的选择。 本次东哥介绍几个常见的提速方法,一个比一个快,了解pandas本质,才能知道如何提速。 下面是一个例子。 >>> import pandas as pd # 导入数据集 &gt

Python数据科学 1871

优化Pandas代码性能的14个技巧

作者:禅与计算机程序设计艺术 1.背景介绍 Python的pandas模块是非常流行的数据处理库,在数据分析领域拥有极高的地位。数据量越大、处理流程复杂的情况下,利用pandas进行数据的清洗和计算通常会比纯粹用Python代码实现快很多。那么如何提升pandas代码的运行速度呢?本文将通过分析pa

AI天才研究院 1448

【Python】再见 for 循环!pandas 速度提升315倍!

for是所有编程语言的基础语法,初学者为了快速实现功能,依懒性较强。但如果从运算时间性能上考虑可能不是特别好的选择。本次东哥介绍几个常见的提速方法,一个比一个快,了解pandas本质,才能知道如何提速。>>>importpandasaspd #导入数据集 >>>df=pd.read_csv('demand_profile.csv') >&g...

fengdu78的博客 523

针对冷热数据的druid写入方案

方案一: Segment元数据信息存储到mysql等关系型数据库时,针对每个SegmentID增加是否是热数据的字段。此外,设热数据判定规则,如近一天的数据,指定时间戳范围的数据,近几条数据或近几个segment等。 Coordinator轮询zookeeper,获取新发布的segment,通过元数据存储的是否是热数据的segment信息,向不同的Historcial进行发布数据加载指令。如果为热数据,将segment一个副本加载到具备SSD的Historcial节点上,其他副本放到具备HHD的His.

JustinMars的博客 748

校招总结—FPGA从入门到放弃

校招总结—FPGA从入门到放弃 感谢咸鱼FPGA的授权转发,原文地址为https://www.cnblogs.com/xianyufpga/ 其实 offer 早就定下来了,最近忙着入党考试,现在才腾出时间来写个总结。我校招开始于 7 月底,算是比较晚了,后面加了各大校招交流群,发现很多同学都是过完年后就开始打磨项目、复习基础、寻找实习。对比之下我这准备确实仓促,不过结果还算满意。 ...

qq_31515205的博客 8607

再见 for 循环!pandas 提速 315 倍~

for是所有编程语言的基础语法,初学者为了快速实现功能,依懒性较强。但如果从运算时间性能上考虑可能不是特别好的选择。 本次介绍几个常见的提速方法,一个比一个快,了解pandas本质,才能知道如何提速。 下面是一个例子 >>>importpandasaspd #导入数据集 >>>df=pd.read_csv('demand_profile.csv') >>>df.head() date_timeenergy_kw...

weixin_46737755的博客 398

手把手教你用Multisim仿真ADC接口电路(附峰值采样与电平抬升实战)

本文通过Multisim软件,手把手教学如何构建高保真ADC前端信号调理电路。核心实战内容包括峰值采样保持电路与电平抬升电路的设计、仿真与调试,旨在解决模拟信号接入ADC时遇到的幅度不匹配、负电压等问题,帮助电子设计者快速掌握关键接口电路的实现技巧。

ooo22的博客 259

再见 for 循环!pandas 速度提升315倍!

是所有编程语言的基础语法,初学者为了快速实现功能,依懒性较强。但如果从运算时间性能上考虑可能不是特别好的选择。本次东哥介绍几个常见的提速方法,一个比一个快,了解本质,才能知道如何提速。 >>> import pandas as pd # 导入数据集 >>> df = pd.read_csv('demand_profile.csv') >>> df.h

m0_59236127的博客 666

双目视觉入门实战:用Matlab标定相机,再到Python OpenCV完成测距的完整链路

本文详细介绍了双目视觉技术的完整实现流程,从Matlab相机标定到Python OpenCV测距的全链路实践。重点解析了Matlab与OpenCV的参数转换技巧,以及立体校正、视差计算等关键步骤的代码实现,帮助开发者快速掌握双目测距系统的搭建方法。

weixin_29166013的博客 447

【图像去噪(Image Denoising)】关于【图像去噪】专栏的相关说明,包含适配人群、专栏简介、专栏亮点、阅读方法、定价理由、品质承诺、关于更新、去噪概述、文章目录、资料汇总、问题汇总(更新中)

你是否在全网苦寻【图像去噪(ImageDenoising)】的相关资料?你的目标是否是看懂【图像去噪(ImageDenoising)】的相关论文,复现代码,跑出结果,并试图创新?你是否需要发表【图像去噪(ImageDenoising)】的相关论文毕业?你是否需要做【图像去噪(ImageDenoising)】的相关项目,开发软件,研究算法,获得专利或者软著?只要是与【图像去噪(ImageDenoising)】有关的问题,那么请继续往下看。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 2万+

【Python】速度起飞!替代 pandas 的 8 个神库

之前介绍过不少关于pandas性能加速的技巧,但这些技巧再厉害,整体运行速度方面也会遇到瓶颈。再见 for 循环!速度提升315倍!Pandas、Numpy性能优化秘籍(全)本篇介绍 8 个可以替代pandas的库,在加速技巧之上,再次打开速度瓶颈,大大提升数据处理的效率。1. DaskDask在大于内存的数据集上提供多核和分布式并行执行。在Dask中,一个DataFra...

fengdu78的博客 3516

Codex入门24-效率倍增秘籍(终极总结:10个让你开发速度翻倍的Codex高级技巧)

专栏收官之作!经过前23篇的系统学习,你已经掌握了 Codex CLI 的核心用法。本文浓缩10个实战验证的高级技巧:管道化提示词将复杂任务拆成递进指令链,模板化 SKILL.md 打造个人技能库,Shell 别名让操作快如闪电,多模型切换省钱又高效……这不是理论课,每个技巧都配有可直接运行的代码。掌握全部10招,构建你的 AI 开发工作流闭环,让开发速度真正翻倍!

yueyeguzhuo的专栏 191

Python数据处理之Pandas库

本文介绍了Pandas中Series和DataFrame对象的创建与操作方法。Series是一维带标签数组,支持自定义索引和向量化运算;DataFrame是二维表格结构,支持行列索引和混合数据类型。演示了通过字典、数组等方式创建对象,以及数据访问、修改、切片等操作技巧。同时介绍了Index对象作为不可变标签数组的特性,以及Pandas处理缺失值的基本方法。这些数据结构是数据分析的核心工具,支持高效的数据处理和计算。

weixin_46287157的博客 5008

详解Pytorch求导

本文主要详解Pytorch求导,希望能对学习Pytorch的同学有所帮助。 文章目录 1. pytorch求导问题 2. pytorch三大类求导代码示例 2.1 标量求导 2.2 向量求导&矩阵求导

weixin_43178406的博客 3077

pandas教程:2012 Federal Election Commission Database 2012联邦选举委员会数据库

里面包含了支持者的名字,职业和雇主,地址,赞助金额。我们可以已经能想到如何切割、整理数据,来提取赞助者的统计数据,或提取宣传活动的模式,这里我们展示一些不同的分析方法。可以看到有些职业是同一种工作类型,指代的是同一个东西。这两个连续操作是分别独立执行的,一个结束后,另一个才开始。上,这里我是把数据集压缩成了ZIP格式,解压后能正常导入)。我觉得也有必要好好了解一下,这个网站做了很好的讲解,),所以我们最好添加这样的信息。这样的情况,即把两个索引操作连在一起。,发现映射关系被正常执行了,所以这里的。

Cachel Wood的博客 351

数模实战中的pandas数据清洗流水线

pandas作为Python数据分析核心库,其本质是面向内存的批处理引擎,擅长在有限时间窗口内高效处理中等规模、高噪声的真实业务数据。它通过向量化操作、灵活的数据类型系统(如category、Int64、string)和丰富的字符串/时间解析能力,支撑气象时序、嵌入式流数据、城市结构化报表等典型脏数据场景。技术价值在于降低调试成本、保障元数据完整性,并与scikit-learn等建模生态无缝衔接。本文聚焦数学建模竞赛中的高频痛点——混合编码Excel、多形态时间字段、伪装型空值、地理精度陷阱及二进制帧解析,

weixin_34189116的博客 449

AES-128-CMAC:背景、汽车应用、CAPL 实现与开源工具验证

本文详解车载诊断中AES-128-CMAC算法的原理与应用,涵盖其在UDS安全访问、刷写鉴权、SecOC认证及密钥派生中的核心作用。结合真实汽车电子场景,提供纯CAPL实现代码与测试脚本,并通过pycryptodome进行逐字节验证,确保算法正确性。全程基于CANoe实测数据,可直接用于HIL环境复现,助力开发者高效落地汽车网络安全方案。

蚂蚁小兵 119

Lance架构重塑:AI原生湖仓格式的范式突破与多模态数据处理方案

在数据基础设施的演进历程中,传统数据湖格式与AI工作流之间的鸿沟日益凸显。Parquet、ORC等列式存储格式虽在批处理场景表现优异,却难以满足向量检索、实时推理等AI原生需求。Lance数据湖格式通过架构层面的根本性创新,实现了从"存储优先"到"计算友好"的范式转变,为多模态AI应用提供端到端的数据支撑框架。 ## 价值主张:AI原生数据基础设施的架构哲学 Lance的设计哲学源于对现代AI

gitblog_00753的博客 1038

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

上一篇: 再见PDF提取收费!我用100行Python代码搞定!
下一篇: 如何用Python开发QQ机器人
菜鸟学Python
博客等级 码龄9年 8084粉丝 571原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值