【Pandas】pandas用法解析(一)

这篇具有很好参考价值的文章主要介绍了【Pandas】pandas用法解析(一)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、生成数据表

1.导入pandas库

2.导入CSV或者xlsx文件

3.用pandas创建数据表

二、数据表信息查看

1.维度查看

2.数据表基本信息(维度、列名称、数据格式、所占空间等)

3.每一列数据的格式

4.某一列格式

5.空值判断

6.查看某一列空值

7.查看某一列的唯一值

8.查看数据表的值

9.查看列名称

10.查看前5行数据、后5行数据

三、数据表清洗

1.用数字0填充空值

2.使用列prince的均值对NA进行填充

3.清除city字段的字符空格

4.大小写转换

5.更改数据格式

6.更改列名称

7.删除后出现的重复值

8.删除先出现的重复值

9、数据替换

四、数据预处理

1.数据表合并

2.设置索引列

3.按照特定列的值排序

4.按照索引列排序

5.如果prince列的值>3000,group列显示high,否则显示low.

​6.对复合多个条件的数据进行分组标记

7.对category字段的值依次进行分列,并创建数据表,索引值为df_inner的索引列,列名称为category和size 

​8.将完成分裂后的数据表和原df_inner数据表进行匹配


五、数据提取

六、数据筛选

七、数据汇总

八、数据统计

九、数据输出


一、生成数据表

1.导入pandas库

import pandas as pd

2.导入CSV或者xlsx文件

df = pd.DataFrame(pd.read_csv('filename.csv'))
df = pd.DataFrame(pd.read_excel('filename.xlsx'))

3.用pandas创建数据表

import numpy as np

df = pd.DataFrame({"id":[1001,1002,1003,1004,1005,1006], 
                    "date":pd.date_range('20130102', periods=6),
                    "city":['Beijing ', 'SH', ' guangzhou ', 'Shenzhen', 'shanghai', 'BEIJING '],
                    "age":[23,44,54,32,34,32],
                    "category":['100-A','100-B','110-A','110-C','210-A','130-F'],
                    "price":[1200,np.nan,2133,5433,np.nan,4432]},
                     columns =['id','date','city','category','age','price'])

【Pandas】pandas用法解析(一)

二、数据表信息查看

1.维度查看

df.shape

df.shape
Out[36]: (6, 6)

2.数据表基本信息(维度、列名称、数据格式、所占空间等)

df.info()

【Pandas】pandas用法解析(一)

3.每一列数据的格式

df.dtypes

【Pandas】pandas用法解析(一)

4.某一列格式

df['date'].dtype

df['price'].dtype

【Pandas】pandas用法解析(一)

5.空值判断

df.isnull() 

【Pandas】pandas用法解析(一)

6.查看某一列空值

【Pandas】pandas用法解析(一)

7.查看某一列的唯一值

【Pandas】pandas用法解析(一)

8.查看数据表的值

df.values

9.查看列名称

df.columns

10.查看前5行数据、后5行数据

df.head() #默认前5行数据
df.tail() #默认后5行数据

三、数据表清洗

1.用数字0填充空值

df.fillna(value=0)

【Pandas】pandas用法解析(一)

2.使用列price的均值对NA进行填充

df['price'].fillna(df['price'].mean())

【Pandas】pandas用法解析(一)

3.清除city字段的字符空格

df['city']=df['city'].map(str.strip)

【Pandas】pandas用法解析(一)

4.大小写转换

df['city']=df['city'].str.lower()

【Pandas】pandas用法解析(一)

5.更改数据格式

【Pandas】pandas用法解析(一)

df['price'].astype('int')

【Pandas】pandas用法解析(一)

6.更改列名称

df.rename(columns={'category': 'category-size'}) 

【Pandas】pandas用法解析(一)

7.删除后出现的重复值

df['city'].drop_duplicates()

8.删除先出现的重复值

df['city'].drop_duplicates(keep='last')

9、数据替换

df['city'].replace('sh', 'shanghai')

四、数据预处理

df1=pd.DataFrame({"id":[1001,1002,1003,1004,1005,1006,1007,1008],
                  "gender":['male','female','male','female','male','female','male','female'],
                  "pay":['Y','N','Y','Y','N','Y','N','Y',],
                  "m-point":[10,12,20,40,40,40,30,20]})

【Pandas】pandas用法解析(一)

1.数据表合并

(1)merge

df_inner=pd.merge(df,df1,how='inner')  # 匹配合并,交集
df_left=pd.merge(df,df1,how='left') 

【Pandas】pandas用法解析(一)
df_right=pd.merge(df,df1,how='right')
df_outer=pd.merge(df,df1,how='outer')  #并集

【Pandas】pandas用法解析(一)

(2)append

result = df1.append(df2)

【Pandas】pandas用法解析(一)

df_result = df3.append(df4)

df3 = pd.DataFrame({'A':['A0','A1','A2','A3'],
                    'B':['B0','B1','B2','B3'],
                    'C':['C0','C1','C2','C3']})
df4 = pd.DataFrame({'A':['A4','A5','A6','A7'],
                    'B':['B4','B5','B6','B7'],
                    'C':['C4','C5','C6','C7']})

df_result = df3.append(df4)

【Pandas】pandas用法解析(一)

 (3)join

result = left.join(right, on='key')

【Pandas】pandas用法解析(一)

(4)concat 

df5 = pd.DataFrame({'A':['A4','A5','A6','A7'],
                    'B':['B4','B5','B6','B7'],
                    'C':['C4','C5','C6','C7']})

result = pd.concat([df3,df4,df5])

【Pandas】pandas用法解析(一)

2.设置索引列

result.set_index('A')

【Pandas】pandas用法解析(一)

3.按照特定列的值排序

df_inner.sort_values(by=['age'])

【Pandas】pandas用法解析(一)

4.按照索引列排序

 df=result.set_index('A')

【Pandas】pandas用法解析(一)

df.sort_index()

【Pandas】pandas用法解析(一)

5.如果prince列的值>3000,group列显示high,否则显示low.

df_inner['group'] = np.where(df_inner['price'] > 3000,'high','low')

6.对复合多个条件的数据进行分组标记

 df.loc[(df['city'] == 'beijing') & (df['price'] >= 4000), 'sign']=1

7.对category字段的值依次进行分列,并创建数据表,索引值为df_inner的索引列,列名称为category和size 

【Pandas】pandas用法解析(一)

pd.DataFrame((x.split('-') for x in df_inner['category']),index=df_inner.index,columns=['category','size'])

8.将完成分裂后的数据表和原df_inner数据表进行匹配

 df_inner=pd.merge(df_inner,df_split,right_index=True, left_index=True)

【Pandas】pandas用法解析(一)

【Pandas】pandas用法解析(一)

五、数据提取

六、数据筛选

七、数据汇总

八、数据统计

九、数据输出

————————————————
参考链接:https://blog.csdn.net/yiyele/article/details/80605909文章来源地址https://www.toymoban.com/news/detail-488592.html

到了这里,关于【Pandas】pandas用法解析(一)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • EFcore CodeFirst生成数据表

    项目中创建类,然后通过模型实体类,生成数据库中的表。下图为工程结构,同时本机上已经安装了Mysql数据库,创建了hxdata数据库。也可以通过数据库表迁移生成实体类。  1.创建数据模型类 2.从NuGet安装包 Microsoft.EntityFrameworkCore.Tools Pomelo.EntityFrameworkCore.MySql 3.创建数据库上下

    2024年02月05日
    浏览(33)
  • 用Python做数据分析之生成数据表

    第一部分是生成数据表,常见的生成方法有两种,第一种是导入外部数据,第二种是直接写入数据。 Excel 中的文件菜单中提供了**外部数据的功能,支持数据库和文本文件和页面的多种数据源导入。 获取外部数据 python支持从多种类型的数据导入。在开始使用 python 进行数据导

    2024年01月17日
    浏览(38)
  • 通过一个实际例子说明Django中的数据库操作方法OneToOneField()的用法【数据表“一对一”关系】

    当我们在Django中定义一个模型时,可以使用 OneToOneField 来建立一个一对一的关系。这种关系表示两个模型之间的一种特殊关联,其中一个模型的实例只能与另一个模型的实例关联。 让我们以一个简单的示例来说明 OneToOneField 的用法。假设我们正在构建一个简单的博客应用,其

    2024年02月13日
    浏览(55)
  • 通过一个实际例子说明Django中的数据库操作方法法ForeignKey()的用法【数据表“一对多”关系】

    当使用Django进行数据库操作时,ForeignKey(外键)是一种非常有用的字段类型。它允许在数据库表之间创建关联关系,类似于其他数据库系统中的外键概念。通过ForeignKey字段,我们可以建立一个模型与另一个模型的一对多关系。 以下是一个实际例子,使用ForeignKey字段在Djang

    2024年02月12日
    浏览(54)
  • 使用mybatisX逆向生成数据表实体类(pojo,dao),mapper,service

    先看使用mybatisX后生成的文件。 1.先在idea安装mybatisX插件,在file-setting-plugins,搜索mybatisX插件,重新启动idea即可。 2.在idea编辑器右侧点击Database,点击“+”链接你的数据库类型,这里我选mysql。     输入root,密码:xxxx 输入url:jdbc:mysql://localhost:3306/emos?useUnicode=truecharacterEnc

    2024年02月03日
    浏览(41)
  • EasyCode代码生成插件-模板分享(基于数据表生成MyBatisPlus格式的dao,service,controller和vue组件)

    目录 概述 使用演示 模板代码    实体类pojo   表现层controller 业务层service接口  业务层serviceImpl实现类 持久层dao Vue组件    本片博客用于分享EasyCode的自定义模板(模板在篇末),用于简化开发,免去重复性的工作。 作用: 1.根据数据库表,后端生成基于MyBatisPlus结构下的

    2024年02月10日
    浏览(56)
  • 利用Python进行数据清洗与预处理:Pandas的高级用法【第147篇—Pandas的高级用法】

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 在数据科学和机器学习领域,数据清洗和预处理是至关重要的步骤。Pandas库作为Python中最受欢迎的数据处理工具之一,提供了强大的功能来处

    2024年04月09日
    浏览(104)
  • Python 教学 | Pandas 数据合并(含目录文件合并案例)

    目录 Part  1前言 Part2  Pandas 数据合并函数 1  df.append() 实现数据追加 (1)向表中追加相同结构的表 (2)向表中追加不同结构的表 (3)向数据中添加一行 2  pd.concat() 实现数据连接 (1)多个相同结构数据纵向合并 (2)多个结构不同的数据纵向合并 (3)多个数据横向合并

    2024年01月17日
    浏览(58)
  • Python-pandas:数据合并merge函数用法详解

    介绍一下数据分析中很常用的一个函数——merge,它能够进行高效的数据合并操作。先看一下语法格式及其初步解释: 生成的两个DataFrame对象如下: 1、参数left,right: 将df_d作为左侧的frame,df_e作为右侧的frame,则参数left=df_d,right=df_e; 2、参数how: 当参数how=\\\'left\\\':仅使用左

    2024年02月15日
    浏览(47)
  • NumPy和Pandas库的基本用法,用于数据处理和分析

    当涉及到数据处理和分析时,NumPy和Pandas是两个非常常用的Python库。下面是它们的基本用法: NumPy(Numerical Python): 导入NumPy库:在代码中使用import numpy as np导入NumPy库。 创建NumPy数组:使用np.array()函数可以创建一个NumPy数组。例如,arr = np.array([1, 2, 3, 4, 5])创建一个包含整数

    2024年02月11日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包