张小明 2025/12/23 7:16:38
男女做暖暖试看网站,生活中花钱请人做网站,Astra wordpress,企业咨询公司是不是骗子Pandas 是一个基于 NumPy、专为高效处理结构化数据而设计的开源 Python 数据分析库#xff0c;堪称 Python 数据分析领域的核心引擎。它提供了 Series#xff08;一维带标签数组#xff09; 和 DataFrame#xff08;二维表格型数据结构#xff09; 这两种核心工具堪称 Python 数据分析领域的核心引擎。它提供了 Series一维带标签数组 和 DataFrame二维表格型数据结构 这两种核心工具凭借其强大的 I/O 能力可轻松读写 CSV、Excel、SQL 等多种数据源并能高效完成数据清洗如处理缺失值与重复值、筛选探索通过标签或布尔索引快速切片、以及分组聚合GroupBy、合并连接Merge等关键任务从而将复杂的数据操作转化为简洁直观的代码让数据清洗、转换、聚合等分析流程变得简单易行且高效。核心数据结构1.Series —— 一种带标签的一维数组可存储任意数据类型整数、字符串、浮点数、Python 对象等相当于 Excel 中的一列或数据库表中的单个字段索引标签让数据定位更直观。importpandasaspd spd.Series([1,3,5,7],index[a,b,c,d])2.DataFrame —— 一种带标签的二维表格型结构由多个共享同一索引的 Series 组成可容纳异构数据不同列类型不同相当于 Excel 工作表、SQL 数据表或 R 的 data.frame是 Pandas 中最常用、最核心的数据容器。data{Name:[Alice,Bob],Age:[25,30]}dfpd.DataFrame(data)常用功能Pandas 的数据读取与写入I/O功能支持 CSV、Excel、SQL、JSON、Parquet 等主流格式通过 pd.read_xxx()/ df.to_xxx()简洁 API实现数据在外部源与 DataFrame 间的快速流转自动处理编码、类型等细节让数据加载与导出高效便捷。读取csv文件importpandasaspd df_1pd.read_csv(data1.csv)df_2pd.read_csv(data2.csv,encodingutf8,headerNone)headerNone如果不写的话会让读取文件的第一行成为表头造成数据缺失读取excel文件importpandasaspd df_3pd.read_excel(data3.xlsx)读取txt文件importpandasaspd df_4pd.read_table(data4.txt,sep,,headerNone)sep‘,’指定文件的分隔符为逗号,导出文件importpandasaspd df_1.to_csv(导出.csv,indexTrue,headerTrue)df_1.to_excel(导出.xlsx,indexTrue,headerTrue)indexTrue表示导出时包含 DataFrame 的索引行标签默认值为 True若设为 False则不导出索引。缺失值处理方式1.检测用 isna()/isnull()标记缺失位置notna()/notnull()标记非缺失值快速定位数据“空洞”nadf.isnull()2.删除用 dropna()删除含缺失值的行axis0默认或列axis1df2df.dropna()print(df2)3.填充用 fillna()填充缺失值可按固定值如 0、“未知”、前向/后向填充df2df.dropna()print(df2)重复值处理识别与去重当数据中存在完全重复的行时会影响分析结果的准确性需要进行处理。检查重复值duplicated()该方法返回一个与原数据等长的布尔序列True/False用于标记哪些行是重复的。keep参数控制如何定义“重复”并标记首次出现的行。keep‘first’(默认)除了第一次出现的行后续重复行都被标记为 True。keep‘last’除了最后一次出现的行前面重复行都被标记为 True。keepFalse所有重复的行包括第一次和最后一次都被标记为 True。# 示例标记所有重复行duplicatesdf.duplicated(keepFalse)print(duplicates)删除重复值drop_duplicates()该方法直接删除被 duplicated()标记为 True的行返回一个新的 DataFrame除非设置 inplaceTrue。keep参数控制删除后保留哪一行。keep‘first’(默认)保留第一个出现的重复行删除后续的。keep‘last’保留最后一个出现的重复行删除前面的。keepFalse删除所有重复的行只留下唯一的记录。# 示例删除所有完全重复的行只留唯一值df_uniquedf.drop_duplicates()# 示例基于特定列(A, B)来检查和删除重复项df_cleaneddf.drop_duplicates(subset[A,B],keeplast)数据抽取筛选、抽样与选择数据抽取是从大型数据集中提取出我们感兴趣部分的过程主要包括条件筛选、随机抽样和行列选择。条件筛选按规则提取行使用布尔索引Boolean Indexing根据一个或多个条件来筛选数据。单条件df[df[‘列名’] 值]多条件使用位运算符 (与)、|(或)每个条件必须用括号括起来。# 筛选 年龄 30 且 城市 北京 的记录filtered_dfdf[(df[年龄]30)(df[城市]北京)]抽样随机抽取样本用于从大数据集中随机抽取一部分进行分析避免窥探整体。df.sample(n5)随机抽取 5 行。df.sample(frac0.5)按 50% 的比例随机抽取行。按列选择提取特定列选择离散列传入列名的列表 df[[‘列1’, ‘列2’]]选择连续列范围使用 .loc按标签选择 df.loc:, ‘列1’:‘列3’按行选择提取特定行按位置整数索引选择使用 .ilocdf.iloc0:5按标签索引名选择使用 .locdf.loc[df.index.isin([1, 3, 5])](选择索引为 1, 3, 5 的行)数据框合并concat()函数concat()是 Pandas 中用于沿指定轴行或列拼接多个 DataFrame 的核心函数常用于纵向堆叠增加行或横向拼接增加列。基本使用方法importpandasaspdimportnumpyasnp# 创建示例数据框df_1pd.DataFrame(np.arange(12).reshape(3,4))# 3行4列值0-11df_22*df_1# 每个元素乘以2# 纵向合并默认 axis0按行堆叠new_df1pd.concat([df_2,df_1])# df_2在上df_1在下# 横向合并axis1按列拼接new_df2pd.concat([df_1,df_2],axis1)# df_1在左df_2在右axis0默认纵向拼接沿行方向增加行数列数不变要求列名一致。axis1横向拼接沿列方向增加列数行数不变要求行索引能对应。join参数控制合并方式交集 or 并集当使用 axis1横向合并 时可通过 join参数决定是按行索引的交集inner还是并集outer进行合并。join‘outer’默认按行索引的并集合并缺失值填充 NaN。join‘inner’仅保留行索引的交集部分没有交集的行会被丢弃。# 创建带自定义索引的 DataFramedf_3pd.DataFrame(np.arange(12).reshape(3,4),index[A,B,2])# 横向合并 - 交集只保留两个 DataFrame 都有的索引行new_df3pd.concat([df_1,df_3],axis1,joininner)# 横向合并 - 并集保留所有索引行缺失值填充 NaNnew_df4pd.concat([df_1,df_3],axis1,joinouter)join‘outer’当你想保留所有原始数据哪怕某些行在另一个表里没有对应数据。join‘inner’当你只关心两个表中都有的那些行比如按某个共同索引合并关键信息。数据框列的拼接生成新列有时我们需要将多个列的值拼接组合起来生成一个新的列比如拼接多个字段组成一个唯一标识 ID。使用 运算符直接拼接列适用于列中的元素都是可相加的类型如字符串、数字Pandas 会按列对应元素逐一相加。# 假设 df 是你的 DataFrame包含列 area, birthday, ranking, only# 方法1直接使用 要求列内元素类型支持相加比如都是字符串或数字numdf[area]df[birthday]df[ranking]df[only]df[id]num# 将拼接结果赋值给新列 id# 方法2如果列中包含非字符串类型可以先转换为字符串再拼接dfdf.astype(str)# 先将所有相关列转为字符串类型numdf[area]df[birthday]df[ranking]df[only]df[id]num# 拼接后的结果为字符串类型注意如果列中包含 数字和字符串混合或者希望拼接结果为字符串比如生成唯一 ID推荐先用 df[[‘col1’,‘col2’]] df[[‘col1’,‘col2’]].astype(str)将相关列转换为字符串再进行 拼接。DataFrame 本质理解DataFrame 本质上就是一个 Excel 表格或者说是多个 Series一维数据按列拼接而成的二维表格。每一列是一个 Series所有列共享相同的行索引从而构成规整的“表格结构”。Matplotlib.pyplotPython 数据可视化基础库Matplotlib 是 Python 最经典且功能强大的数据可视化库其中的 pyplot模块 提供了类似 MATLAB 的简洁绘图接口通过简单的函数调用即可生成各类常见的统计与科学图表是数据探索与结果展示的利器。基本绘图功能matplotlib.pyplot支持快速绘制多种基础图表适用于不同场景的数据展示需求线图折线图函数plt.plot(x, y)用途展示数据随某个变量的变化趋势适用于连续型数据。示例函数调用plt.plot(x,y,colorred,markero)散点图函数plt.scatter(x, y)用途展示两个变量之间的关系或分布强调离散的数据点。示例函数调用plt.scatter(x,y)柱状图函数plt.bar(x, height)用途展示分类数据的大小对比生成垂直条形图。示例函数调用plt.bar(x,height)直方图函数plt.hist(data)用途展示数据的分布情况常用于观察数据的频率分布。示例函数调用plt.hist(data)图表信息设置函数设置图表标题函数plt.title(‘标题’)作用为图表添加标题文字。设置 X 轴标签函数plt.xlabel(‘X轴标签’)作用标注 X 轴的含义。设置 Y 轴标签函数plt.ylabel(‘Y轴标签’)作用标注 Y 轴的含义。显示图表函数plt.show()作用渲染并显示已绘制的图表。示例1绘制一个折线图importmatplotlib.pyplotaspltimportnumpyasnp xnp.array([1,2,3,4,5])ynp.array([10,20,25,30,40])plt.plot(x,y,colorred,markero)plt.title(Scatter Plot Example)plt.xlabel(X Axis)plt.ylabel(Y Axis)plt.show()示例2创建多个子图并绘制importmatplotlib.pyplotaspltimportnumpyasnp xnp.linspace(0,10,10000)y1np.sin(x)y2np.cos(x)y3np.tan(x)y4np.sin(x**2)fig,axsplt.subplots(2,2,figsize(10,8))axs[0,0].plot(x,y1,r)axs[0,0].set_title(sin(x))axs[0,1].plot(x,y2,g)axs[0,1].set_title(cos(x))axs[1,0].plot(x,y3,b)axs[1,0].set_title(tan(x))axs[1,1].plot(x,y4,m)axs[1,1].set_title(sin(x^2))plt.show()这段代码利用 Matplotlib 和 NumPy 绘制了四个常见三角函数的曲线并通过 plt.subplots(2, 2)将它们组织在 2×2 的子图网格中以便对比展示首先用 np.linspace(0, 10, 10000)生成 0 到 10 之间均匀分布的 10000 个点作为平滑的 x 轴数据再分别计算 sin(x)、cos(x)、tan(x)和 sin(x²)得到对应的 y 值随后 plt.subplots(2, 2, figsize(10, 8))创建一个 2 行 2 列、尺寸为 10×8 英寸的画布axs数组按行列索引访问各子图在每个子图中用 .plot()绘制相应曲线并设置颜色与标题最后必须调用 plt.show()才能将绘制结果渲染显示出来从而直观地呈现四种函数在相同区间内的形态差异。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
自做建材配送网站外贸seo网站开发
ConfigMgr 使用与安全配置全解析 1. 常见环境问题理解 1.1 DNS 相关要点 在大型多区域环境中,可通过右键单击 DNS 服务器而非区域来启用和配置所有区域的清理功能。但需注意,此操作会影响所有区域,若需要按区域进行精细的清理设置,则不宜采用该方法。 在排查 DNS 问题时…
企业建网站的步骤室内设计软件自己设计
还在为Blender内置渲染器的物理精度不足而烦恼吗?Mitsuba-Blender插件为你提供了完美的解决方案。这款强大的集成工具将学术界公认的物理渲染器Mitsuba无缝融入Blender环境,让艺术家和研究人员都能享受到最前沿的渲染技术。🎯 【免费下载链接…
外贸网站推广如何做新任上海市领导调整公示
第一章:高危漏洞预警概述 在当前复杂的网络环境中,高危漏洞的爆发往往会在短时间内对全球范围内的信息系统造成严重威胁。及时发现并响应这些漏洞,是保障系统安全的核心环节。高危漏洞通常指那些可被远程利用、无需用户交互即可执行任意代码、…
办个网站需要多少钱如何查看一个网站做的外链
文|魏琳华编|王一粟年底似乎又到了AI厂商们展示实力的日子。上周,快手上演了一场为期五天的全能灵感周技术展示;本周,智谱的连续开源也如期而至。在这五天的时间内,快手带来了三个大模型、一个助力AI落地的…
如何做英文网站推广免费外链工具
01 生活哪有那么多弯弯绕, 无非是干饭香、躺平爽, 给自个儿整点儿乐子, 给朋友唠句玩笑。 忙到飞起不抓狂,闲下来不瞎慌, 鸡毛蒜皮的日子里, 怎么舒坦怎么浪~ 02 你瞎操心的事儿,八…