首页 > 其他分享 >Pandas入门

Pandas入门

时间:2024-07-22 16:19:26浏览次数:6  
标签:pd 入门 df DataFrame column str 字符串 Pandas

Pandas入门 1.读取和写入数据 ①read _csv():从 CSV文件读取数据到DataFrame。  import pandas as pd 读取文件名为"data.csv'的数据 df= pd.read_csv('data.csv')  ②read_excel():从 Excel文件读取数据。  假设有一个文件名为1data.xlsx df = pd.read_excel('data.xlsx')  ③read_sql():从SQL数据库读取数据。  import pandas as pd import sqlalchemy as sa  #建立数据库连接 engine = sa.create_engine('sqlite:///my_database.db')  #读取名为'my_table'的表格 df= pd.read_sql('my_table', engine)  ④to_csv():将DataFrame数据写入CSV文件。  df.to_csv('output.csV', index=False)  ⑤to_excel():将DataFrame数据写入 Excel文件。  df.to_excel('output.xlsx', index=False) ⑥to_sql():将DataFrame数据写入SQL数据库。  df.to_sql('my_table',engine, if_exists='replace',index=False)  ⑦read_json(),to_json():读取和写入JSON文件。  #读取JSON  df= pd.read_json('data.json')  #写入JSON df.to_json('output.json')  ⑧read_htm l(),to_html():读取HTML表格数据,写入数据到HTML。  #读取HTML  #返回一个列表,每个元素是一个DataFrame  list_of_df= pd.read_html('http://example. com/table.html')  #写入HTML df.to_html('output.html')  ⑨read_parquet(),to_parquet():读取和写入Parquet文件,一种高效的列存储格式。  #读取Parquet  df= pd.read_parquet(' data.parquet')  #写入Parquet  df.to_parquet('output.parquet')  2.数据探索和检查 ①head():查看DataFrame 的前几行。  df.head()#默认显示前5行 ②tail():查看DataFrame 的后几行。  df.tail()#默认显示后5行 ③info():获取DataFrame的概要信息。  df. info()  ④describe ():显示数据的统计摘要。  df. describe() ⑤dtypes:查看每列的数据类型。  df.dtypes  3.数据清洗和预处理 ①dropna ():删除含有缺失值的行或列。  df.dropna()#删除含有NaN 的行 ②fiulna():填充缺失值。  df.f1llna(value=0)#用日填充NaN  ③drop():删除指定的行或列。  df.drop(C'column1','column2'],axis=1)#删除指定列 ④rename():重命名DataFrame 的索引或列名。  df.rename (columns={'old_name': Inew_name '})  ⑤astype():转换列的数据类型。  df['column'].astype(' float')  4.数据筛选和索引 ①loc[:基于标签的索引。  df.loc[df['column']>10]  ②iloc[]:基于位置的索引。  df.iloc[o:5]#选择前5行 ③query():使用查询字符串来筛选数据。  df.query('column >10')  5.数据操作和转换 ①groupby():按照某些列进行分组。  df.groupby('column').sum ()  ②pivot-table():创建透视表。 df.pivot_table(values='D', index=['A', 'B'], columns=['C'])  ③merge():合并两个DataFrame。  pd.merge(df1, df2, on='key')  ④concat():连接两个或多个DataFrame。  pd.concat([df1, df2])  ⑤apply():对数据应用函数。  df.apply(lambda x: x.max()-x.min()  6.时间序列分析 ①to_datetime():将字符串转换为datetime对象。  pd.to_datetime (df[' column '])  ②resample ():对时间序列数据进行重采样。  df.resample('M').mean()  ③rolling():应用滚动窗口计算。  df.rolling(window=3).mean() 7.其他有用功能 ①unique():查找列中的唯一值。  df[' column'].unique()  ②va lue_counts():计算一列中各值出现的频次。  df['column'].value_counts()  ③sort_values():按照一列或多列的值进行排序。  df.sort_values (by='column')  ④isna():检测缺失值。  df.isna()  8.聚合和统计 ①sum():计算数值列的总和。  df['column'].sum()  ②mean():计算数值列的平均值。  df['column'].mean()  ③median():计算数值列的中位数。 df['column'].median()  ④min():找出数值列的最小值。  df['column '].min()  ⑤max():找出数值列的最大值。  df['Column'].max()  ⑥std():计算数值列的标准差。  df['column'].std ()  ⑦var():计算数值列的方差。  df['column '].var() ⑧count():计算非空值的数量。  df[' column'].count()  ⑨agg():使用一个或多个操作同时对一组数据进行聚合。  df.agg({'column1':['sum', 'min'l, 'column2': ['max', Imean']})  9.数据转换 ①melt():将DataFrame 从宽格式转换为长格式。 pd.melt(df, id_vars=['A'l,value_vars=['B', 'C'])  ②pivot():将数据从长格式转换为宽格式。  df.pivot(index=' date', columns='variable', values='value')  ③cut():将连续数据分割成离散的区间。  pd.cut(df[' column'1, bins=3)  ④qcut():基于样本分位数来分割数据。  pd.qcut(df[' column'], q=4)  10.字符串处理 ①lower():将字符串转换为小写。  df[' column '].str.lower()  ②upper():将字符串转换为大写。  df['column'].str.upper()  ③len ():计算字符串的长度。  df[' column'].str.len() ④strip():删除字符串前后的空白符(包括空格、换行符等)。 df['column'].str.strip()  ⑤lstrip():删除字符串左边的空白符。  df[' column'].str.lstrip()  ⑥rstrip():删除字符串右边的空白符。  df['column '].str.rstrip() ⑦contains():检查每个字符串是否包含特定模式/子字符串。  df['column'].str.contains ('pattern')  ⑧startswith():检查字符串是否以特定子字符串开始。  df['column'].str.startswith('prefix')  ⑨endswith():检查字符串是否以特定子字符串结束。  df[' column'].str.endswith(' suffix')  ⑩match():根据给定的正则表达式匹配字符串。  df[' column'].str.match(rI^pattern$')  ⑪replace():替换字符串中的某些部分。  df[' column'].str.replace('old', 'new') ⑫split():根据分隔符拆分字符串为多个部分。  df[' column'].str.split(',')  ⑬join():将序列中的元素连接成字符串。  df[' column'].str.join('-1)  ⑭cat():连接字符串(默认按行连接)。  df[' column'].str.cat(sep=',1)  11.正则表达式 ①extract():使用正则表达式从字符串中提取一部分。  df[' column'1.str.extract(r' (pattern)')  ②findal1():使用正则表达式查找字符串中的所有匹配项。  df['column '].str.findall(r'pattern')  ③replace():使用正则表达式替换字符串中的部分内容。  df['column '].str.replace(r'pattern', Ireplacement',regex=True)  12.辅助判断与提取 ①isnumeric():检查每个字符串是否只包含数字。 df['column '].str.isnumeric()  ②isdecimal():检查每个字符串是否只包含十进制数字。  df['column'].str.isdecimal(  ③isalpha():检查每个字符串是否只包含字母。  df['column'].str. isalpha()  ④isdigit():检查每个字符串是否只包含数字。  df[' column'].str.isdigit()  ⑤islower():检查每个字符串是否只包含小写字母。  df[' column'].str.islower()  ⑥isupper():检查每个字符串是否只包含大写字母。  1 df['column '].str.isupper ()  ⑦istitle():检查字符串是否是标题化的(每个单词的首字母大写)。  df['column'].str.istitle()  13.数据可视化 plot():默认绘制线图。 df.plot()  ①plot.bar(),plot.barh():绘制条形图。  df.plot.bar( #垂直条形图2df.plot.barh()#水平条形图 ②plot.hist():绘制直方图。  df.plot.hist() ③plot.box():绘制箱形图。  df.plot.box()  ④plot.area():绘制面积图。  df.plot.area()  ⑤plot.pie():绘制饼图。  df.plot.pie(subplots=True)  ⑥plot.scatter():绘制散点图。  df.plot.scatter(x='columnl', y=' column2')  14.处理重复数据 ①duplicated():检查重复行。 df.duplicated ()  ②drop_duplicates():删除重复行。  df.drop_duplicates ()  15.数据连接 ①concat():沿着一个轴将多个对象堆叠到一起。  pd. concat([df1, df2])  ②merge():根据一个或多个键将不同DataFrame的行连接起来。  pd.merge (df1, df2, on='key')  ③join():对索引进行连接。可以是内连接、外连接、左连接或右连接。  df1.join(df2, how='left')  ④append():将一行或多行附加到DataFrame 上,相当于concat()的特例。  df1.append (df2)  16.数据分组和分箱 ①cut():将连续的数值分割成离散的区间。  pd.cut(df[' column'], bins=3) ②qcut():基于样本分位数来划分数据。  pd.qcut(df[' column'1, q=4)  ③set_index():将DataFrame中的一列或多列设置为索引。  df.set_index('column')  17.索引操作 ①set_index():将DataFrame 的一列或多列设置为索引。  df.set_index('column')  ②reset_index():重置DataFrame 的索引,使之回到默认整数索引。  df.reset_index()  ③swaplevel():交换索引的级别。  df. swaplevel() ④stack():将列旋转为行。  df.stack()  ⑤unstack():将行旋转为列。 df.unstack() 18.性能提升 ①eval0):使用字符串表达式快速计算DataFrame的操作,有助于提高性能。  pd.eval('df1 + df2')  ②query():使用字符串表达式对DataFrame进行查询。  df.query('column >10')

标签:pd,入门,df,DataFrame,column,str,字符串,Pandas
From: https://www.cnblogs.com/chen119/p/18316264

相关文章

  • 张高兴的 MicroPython 入门指南:(三)使用串口通信
    目录什么是串口使用方法使用板载串口相互通信硬件需求电路代码使用板载的USB串口参考什么是串口串口是串行接口的简称,这是一个非常大的概念,在嵌入式中串口通常指UART(UniversalAsynchronousReceiver/Transmitter,通用异步收发器)。使用串口进行的通信叫做串行通信,与之相对的一......
  • C语言初学者入门指南
    C语言初学者入门指南        在编程的世界里,C语言被誉为“编程语言之母”,它是许多现代编程语言(如C++、Java、Python等)的基石。C语言以其高效、灵活和接近硬件的特性,在操作系统、嵌入式系统、游戏开发等多个领域发挥着重要作用。对于初学者而言,掌握C语言不仅能帮助你理......
  • 入门到精通rsync和inotify
    rsync作用:实现文件的备份备份位置可以是当前主机,也可以是远程主机备份过程可以是完全备份,也可以是增量备份功能:1)类似于cp的复制功能将本地主机的一个文件复制到另一个位置下2)将本地主机的文件推送到远程主机:也可以是从远程主机拉取文件到本地使用模式:shell模......
  • 最新PS零基础入门到高级精品自学教程百度云分享下载
    如大家所了解的,PS全称AdobePhotoshop,是一款大家非常熟悉的平面设计软件,也是大家常识认知里的P图软件。很多原创画家、设计师、插画爱好者都会使用这个软件进行创作,常用的版本有PS CS6以及CC版本。Photoshop这款软件,功能是非常强大且实用的。很多小伙伴在接触和学习之前,都觉......
  • 【前端】JavaScript入门及实战71-75
    文章目录71数组72数组的方法73数组的遍历74数组练习75forEach71数组<!DOCTYPEhtml><html><head><title></title><metacharset="utf-8"><scripttype="text/javascript"> //使用字面量来创建数组 //语法:[] vararr=[......
  • 以块的形式处理大型 Spark DataFrame 的推荐方法是什么:“toPandas()”或“RDD.foreach
    我正在使用PySpark处理大型数据集,并且需要以每个500条记录的块的形式处理数据。我正在考虑使用toPandas()将我的SparkDataFrames转换为PandasDataFrames以方便分块或坚持使用SparkRDD,并使用foreachPartition()手动处理分块。以下是我正在考虑的示例方......
  • 在docker中找不到pandas
    我对码头工人很陌生。我可以在我的机器上成功运行python文件,但是Docker无法识别pandas库。这是我的Docker文件:FROMpythonWORKDIR/appCOPY./appCMD["python3","fisherlog_corrected.py"]错误消息如下:Traceback(mostrecentcalllast):File"/ap......
  • puppet基础入门
    前言:对于运维人员而言,自动化运维工具是工作必备,不仅可以节省工作时间,还能省心省力,减少人为失误。软工的构建、开发环境都对环境的一致性要求较高。在云下阶段服务器一直采用的是ansible来进行环境配置管理。使用playbook完成服务器环境的初始化交付,命令行对支持服务......
  • pandas
    1.pandas基础1.1Seriesimportpandasaspdimportnumpyasnp创建##1.创建Series对象sdata=pd.Series(np.arange(1,4),index=list('abc'))sdataa1b2c3dtype:int32访问##2.Series对象访问#默认数字索引print(sdata.iloc[0])#使用标签[a,......
  • Pandas数据分析与处理
    Pandas主要有三种数据结构。1)Series,带标签的一维数组。2)Dataframe,带标签且大小可变的二维表格结构。3)Panel,带标签且大小可变的三维数组。本次主要总结的是pandas用于操作Dataframe的相关操作。一、导入扩展库numpy和pandas,按照Python社区的惯例,在导入扩展库numpy时会起一个......