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

Python库常用函数-数据分析

Python库常用函数

1.pandas库
(1)数据读取与写入
读取 CSV 文件:

data = pd.read_csv('file.csv')

读取 Excel 文件:

data = pd.read_excel('file.xlsx', sheet_name='Sheet1')

写入 CSV 文件:

data.to_csv('new_file.csv', index=False)

写入 Excel 文件:

data.to_excel('new_file.xlsx', sheet_name='Sheet1', index=False)

(2)数据查看与探索
查看数据前几行:

data.head(n)(n为要查看的行数,默认为 5)

查看数据基本信息(列名、数据类型、非空值数量等):

data.info()

查看数据统计描述(计数、均值、标准差、最小值、最大值等):

data.describe()

获取数据形状(行数和列数):

data.shape

获取列名列表:

data.columns

(3)数据选择与过滤
按列名选择单列:

column_data = data['column_name']

按列名选择多列:

selected_data = data[['column1', 'column2', 'column3']]

按行索引选择单行:

row_data = data.loc[index]

按行索引选择多行:

selected_rows = data.loc[start_index:end_index]

按条件过滤数据:

filtered_data = data[data['column_name'] > value]

(4)数据处理与清洗
删除包含缺失值的行:

data.dropna(axis=0, how='any', inplace=True)(axis=0表示按行操作,how='any'表示只要有一个缺失值就删除该行,inplace=True表示直接在原数据上修改)

删除包含缺失值的列:

data.dropna(axis=1, how='any', inplace=True)

填充缺失值:

data.fillna(value, inplace=True)(value为要填充的值)

数据去重:

data.drop_duplicates(subset=['column1', 'column2'], keep='first', inplace=True)(subset指定要根据哪些列去重,keep='first'表示保留第一次出现的重复行)

数据类型转换:

data['column_name'] = data['column_name'].astype('new_type')(new_type可以是int、float、str等)

(5)数据分组与聚合
按列分组并计算某列的总和:

grouped_data = data.groupby('group_column')['sum_column'].sum()

按列分组并计算多个聚合函数:

grouped_data = data.groupby('group_column').agg({'sum_column': 'sum', 'count_column': 'count'})

(6)数据合并与连接
按索引合并两个数据框:

merged_data = pd.merge(data1, data2, left_index=True, right_index=True)

按指定列合并两个数据框:

merged_data = pd.merge(data1, data2, on='common_column')

2.numpy库
(1)创建数组
创建一维数组:

arr = np.array([1, 2, 3, 4, 5])

创建二维数组:

arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

(2)数组基本操作
获取数组形状:

arr.shape

获取数组维度:

arr.ndim

获取数组元素个数:

arr.size

数组索引与切片(与 Python 列表类似)

(3)数组计算与统计
数组元素求和:

np.sum(arr)

数组元素均值:

np.mean(arr)

数组元素标准差:

np.std(arr)

数组元素最大值:

np.max(arr)

数组元素最小值:

np.min(arr)
http://www.lryc.cn/news/499679.html

相关文章:

  • 汽车EEA架构:架构的简介
  • 渗透测试--数据库攻击
  • 反向路径转发(RPF)
  • Python 正则表达式常用特殊字符及其含义
  • Uniapp Android SpringBoot3 对接支付宝支付(最新教程附源码)
  • SQL DML 语句
  • 饲料颗粒机全套设备有哪些机器组成
  • MySQL事务与锁
  • 汽车免拆案例 | 2007款宝马650i车发动机偶尔无法起动
  • PostgreSQL和Oracle的sql差异
  • SpringMvc完整知识点二(完结)
  • 29 - Java Serializable 序列化
  • 59 基于STM32的烟雾、红外、温湿度检测
  • 使用Excel 对S型曲线加减速算法进行仿真
  • flink-connector-mysql-cdc:01 mysql-cdc础配置代码演示
  • java计算机毕设课设—进销存管理系统(附源码、文章、相关截图、部署视频)
  • 鸿蒙UI开发——渐变色效果
  • 嵌入式硬件设计 — 智能设备背后的隐形架构大师
  • QNX的系统资源访问机制
  • 高校数字化运营平台解决方案:构建统一的服务大厅、业务平台、办公平台,助力打造智慧校园
  • 多模态大型语言模型MM-1.5采用数据驱动的方法,通过不断优化数据组合提高模型性能
  • 16 设计模式之适配器模式(充电器转换案例)
  • 基于Java Springboot在线招聘APP且微信小程序
  • 多组学数据如何发表高分SCI论文,以RNA-Seq数据为例
  • Qt Designer Ui设计 功能增加
  • 【Android学习】2024最新版Android Studio安装与配置
  • RabbitMQ延时队列
  • a8204 基于微信小程序的音乐播放器微信小程序的研究与实现 服务器端Java+Mysql+Servlet 文档 源码
  • 游戏新纪元:用栈记录数据,轻松实现悔棋功能
  • C/C++基础知识复习(36)