Pandas DataFrame结构对象常用的属性和方法

Pandas DataFrame是一个二维表结构,包含了行和列的标签,每一列可以有不同的数据类型。

以下是Pandas DataFrame结构对象常用的属性和方法:

DataFrame结构对象属性

DataFrame对象常用的属性有:

  • shape:返回DataFrame的形状(行数、列数)
  • index:返回DataFrame的行索引
  • columns:返回DataFrame的列索引
  • dtypes:返回DataFrame每列数据类型
  • values:返回DataFrame的值,以二维numpy数组形式表示

示例代码:

import pandas as pd
import numpy as np

# 创建DataFrame
data = {'name': ['Tom', 'Jack', 'Mary', 'Jane'],
        'age': [20, 21, 19, 20],
        'score': [80, 90, 85, 92]}
df = pd.DataFrame(data)

# 属性
print("DataFrame的形状为:", df.shape)
print("DataFrame的行索引为:", df.index)
print("DataFrame的列索引为:", df.columns)
print("DataFrame的每列数据类型为:", df.dtypes)
print("DataFrame的值为:", df.values)

输出结果为:

DataFrame的形状为: (4, 3)
DataFrame的行索引为: RangeIndex(start=0, stop=4, step=1)
DataFrame的列索引为: Index(['name', 'age', 'score'], dtype='object')
DataFrame的每列数据类型为: name     object
age       int64
score     int64
dtype: object
DataFrame的值为: [['Tom' 20 80]
 ['Jack' 21 90]
 ['Mary' 19 85]
 ['Jane' 20 92]]

DataFrame结构对象方法

DataFrame结构对象常用的方法有:

  • head():返回DataFrame前几行,默认返回前5行
  • tail():返回DataFrame后几行,默认返回后5行
  • info():返回DataFrame每列的数据类型、非空值个数、内存占用等信息
  • describe():返回DataFrame每列的统计信息,包括计数、均值、标准差、最小值、25%、50%、75%和最大值
  • sort_values():按指定列的值对DataFrame进行排序
  • dropna():删除缺失值
  • fillna():填充缺失值
  • groupby():按指定列分组
  • pivot_table():数据透视表
  • merge():按照指定列将两个DataFrame进行合并
  • join():按照索引将两个DataFrame进行合并

示例代码:

import pandas as pd
import numpy as np

# 创建DataFrame
data = {'name': ['Tom', 'Jack', 'Mary', 'Jane'],
        'age': [20, 21, 19, 20],
        'score': [80, 90, 85, 92]}
df = pd.DataFrame(data)

# 方法
print("DataFrame前2行为:", df.head(2))
print("DataFrame后2行为:", df.tail(2))
print("DataFrame的信息为:",df.info())
print("DataFrame的统计信息为:",df.describe())

print("按分数对DataFrame进行排序:",df.sort_values(by='score', ascending=False))

print("删除缺失值:",df.dropna())

print("填充缺失值为0:",df.fillna(value=0))

print("按照年龄进行分组:",df.groupby('age').sum())

print("数据透视表:",pd.pivot_table(df, values='score', index=['name'], columns=['age']))

df1 = pd.DataFrame({'name': ['Tom', 'Jack', 'Mary', 'Jane'], 'gender': ['M', 'M', 'F', 'F']})

print("合并两个DataFrame:",pd.merge(df, df1, on='name'))

df2 = pd.DataFrame({'gender': ['M', 'M', 'F', 'F'], 'income': [2000, 3000, 2500, 2800]})

print("按索引合并两个DataFrame:",df.join(df2))

输出内容为:

DataFrame前2行为:    name  age  score
0   Tom   20     80
1  Jack   21     90
DataFrame后2行为:    name  age  score
2  Mary   19     85
3  Jane   20     92
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 4 entries, 0 to 3
Data columns (total 3 columns):
 #   Column  Non-Null Count  Dtype 
---  ------  --------------  ----- 
 0   name    4 non-null      object
 1   age     4 non-null      int64 
 2   score   4 non-null      int64 
dtypes: int64(2), object(1)
memory usage: 224.0+ bytes
DataFrame的信息为: None
DataFrame的统计信息为:              age      score
count   4.000000   4.000000
mean   20.000000  86.750000
std     0.816497   5.377422
min    19.000000  80.000000
25%    19.750000  83.750000
50%    20.000000  87.500000
75%    20.250000  90.500000
max    21.000000  92.000000
按分数对DataFrame进行排序:    name  age  score
3  Jane   20     92
1  Jack   21     90
2  Mary   19     85
0   Tom   20     80
删除缺失值:    name  age  score
0   Tom   20     80
1  Jack   21     90
2  Mary   19     85
3  Jane   20     92
填充缺失值为0:    name  age  score
0   Tom   20     80
1  Jack   21     90
2  Mary   19     85
3  Jane   20     92
按照年龄进行分组:      score
age       
19      85
20     172
21      90
数据透视表: age     19    20    21
name                  
Jack   NaN   NaN  90.0
Jane   NaN  92.0   NaN
Mary  85.0   NaN   NaN
Tom    NaN  80.0   NaN
合并两个DataFrame:    name  age  score gender
0   Tom   20     80      M
1  Jack   21     90      M
2  Mary   19     85      F
3  Jane   20     92      F
按索引合并两个DataFrame:    name  age  score gender  income
0   Tom   20     80      M    2000
1  Jack   21     90      M    3000
2  Mary   19     85      F    2500
3  Jane   20     92      F    2800

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Pandas DataFrame结构对象常用的属性和方法 - Python技术站

(2)
上一篇 2023年3月4日 下午12:55
下一篇 2023年3月4日

相关文章

  • Pandas对CSV文件读写操作详解

    当使用Python进行数据分析时,经常需要将数据读取到程序中进行处理。CSV (Comma-Separated Values) 文件是家喻户晓的一种数据交换格式,非常适合用来存储表格数据。因此,Pandas 库为我们提供了方便的读写CSV文件的方法。 1. 读取CSV文件 Pandas提供了read_csv()函数来读取CSV文件。该函数有很多可选参数,用于…

    python 2023年5月14日
    00
  • 以表格样式显示Pandas数据框架,并在表格周围而不是在行周围设置边框

    下面是详细讲解以表格样式显示Pandas数据框架,并在表格周围而不是在行周围设置边框的完整攻略。 一、使用pandas.DataFrame.style设置样式 Pandas提供的样式API可以方便地美化表格,可以通过DataFrame的style属性来实现表格美化。具体步骤如下: 导入pandas包 import pandas as pd 创建DataFra…

    python-answer 2023年3月27日
    00
  • pandas如何使用列表和字典创建 Series

    使用列表和字典创建 Pandas 中的 Series 是很常见的操作,主要通过 pd.Series(list) 或 pd.Series(dict) 来实现。 使用列表创建 Series 使用列表创建 Series,可以先定义一个列表对象,然后使用 pd.Series() 将其转换为 Pandas 中的 Series。 示例代码如下: import panda…

    python 2023年5月14日
    00
  • 使用Pandas构建推荐引擎

    Pandas是一个Python数据分析库,基于NumPy构建,主要用于数据处理、数据清洗、数据分析等领域。Pandas提供了众多的API和函数,使得数据分析和处理变得更加的高效方便。在这里,我们将介绍使用Pandas构建推荐引擎的步骤。 步骤1:数据收集 构建推荐引擎首先需要数据,因此我们需要从合适的渠道收集数据。数据的来源可以是网络上的资源、用户所产生的数…

    python-answer 2023年3月27日
    00
  • Pandas删除数据的几种情况(小结)

    Pandas删除数据的几种情况(小结) 在Pandas中,删除数据是数据清理中一个非常关键的步骤。这里我们将讨论Pandas中删除数据的几种情况。 1. 删除行或列 1.1 删除行 删除行的方法是通过drop()函数来实现的。该函数使用axis=0参数来指示删除行。具体语法如下: df.drop(index_names, axis=0, inplace=Tr…

    python 2023年5月14日
    00
  • Python与Pandas和XlsxWriter组合工作 – 3

    第三部分:使用XlsxWriter创建Excel工作簿并写入数据 现在我们已经掌握了如何使用Pandas读取和操作Excel文件中的数据,接下来我们将学习将数据写入Excel文件中的步骤。为此,我们将使用XlsxWriter模块来创建和写入Excel工作簿。 安装XlsxWriter模块 在开始之前,我们需要先安装XlsxWriter模块。可以使用以下命令安…

    python-answer 2023年3月27日
    00
  • 详解Python中pandas的安装操作说明(傻瓜版)

    详解Python中pandas的安装操作说明(傻瓜版) 为什么安装pandas Pandas是Python中最常用的数据分析工具之一,它可以快速、方便地进行数据清洗和处理,并且提供了多种数据类型和函数供用户使用。 安装前提条件 在安装Pandas之前,需要先安装Python环境。具体安装方法可以参考 “Python环境安装指南”。 安装pandas 第一步:…

    python 2023年5月14日
    00
  • 如何在Python中使用pandas做vLookup

    在Python中使用pandas进行vLookup,可以使用merge函数来完成。具体步骤如下: 读入数据表格:使用pandas库中的read_csv函数读取需要进行vLookup的两个数据表格,并将它们分别存储在两个DataFrame对象中。 import pandas as pd df1 = pd.read_csv(‘table1.csv’) df2 =…

    python-answer 2023年3月27日
    00
合作推广
合作推广
分享本页
返回顶部