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

Python Pandas 结构之 Series 和 DataFrame

文章目录

  • 1 概述
    • 1.1 Pandas 安装
    • 1.2 Series 和 DataFrame 结构
  • 2 Series:一维数组
    • 2.1 创建 Series 对象
      • 2.1.1 创建
      • 2.1.2 创建并指定标签索引
      • 2.1.3 创建并指定数据类型
    • 2.2 访问 Series 数据
      • 2.2.1 按位置索引访问
      • 2.2.2 按标签索引访问
    • 2.3 常用属性
      • 2.3.1 index: 标签索引
      • 2.3.2 values: 数据值
      • 2.3.3 dtype: 数据值类型
      • 2.3.4 size: 对象的大小
      • 2.3.5 empty: 判断对象是否为空
    • 2.4 常用方法
      • 2.4.1 head(): 查看前 n 行数据
      • 2.4.2 tail(): 查看后 n 行数据
      • 2.4.3 isnull(): 检测是否缺失
      • 2.4.4 notnull(): 检测是否不缺失
  • 3 DataFrame:二维数组
    • 3.1 创建 DataFrame 对象
      • 3.1.1 创建
      • 3.1.2 创建并指定索引标签
      • 3.1.3 创建并指定数据类型
    • 3.2 访问 DataFrame 数据
      • 3.2.1 按行索引访问
      • 3.2.2 按列索引访问
    • 3.3 常用属性和方法
      • 3.3.1 T:行列互换

1 概述

1.1 Pandas 安装

  • 安装命令:pip install pandas
import pandas as pd

print(f'查看 pandas 版本:{pd.__version__}')

1.2 Series 和 DataFrame 结构

在这里插入图片描述

2 Series:一维数组

2.1 创建 Series 对象

# 语法格式
import pandas as pd

s = pd.Series(data, index, dtype)
常用参数参数描述
data输入的数据,可以是任何类型,如:列表、字典 等
index数据索引。唯一,默认为 np.arrange(n)
dtype数据类型。如果没有提供,则会自动判断得出

2.1.1 创建

import pandas as pd

data = [10, 20, 30, 40, 50]

s = pd.Series(data)

print(s)
# 0    10
# 1    20
# 2    30
# 3    40
# 4    50
# dtype: int64

2.1.2 创建并指定标签索引

import pandas as pd

data = [10, 20, 30, 40, 50]
index = ['a', 'b', 'c', 'd', 'e']

s = pd.Series(data, index)

print(s)
# a    10
# b    20
# c    30
# d    40
# e    50
# dtype: int64

2.1.3 创建并指定数据类型

import pandas as pd

data = [10, 20, 30, 40, 50]

s = pd.Series(data, dtype=float)

print(s)
# 0    10.0
# 1    20.0
# 2    30.0
# 3    40.0
# 4    50.0
# dtype: float64

2.2 访问 Series 数据

2.2.1 按位置索引访问

import pandas as pd

data = [10, 20, 30, 40, 50]

s = pd.Series(data)

print(s[0])  # 通过索引
print(s[0:2])  # 通过索引切片
# 10
#
# 0    10
# 1    20
# dtype: int64

2.2.2 按标签索引访问

import pandas as pd

data = [10, 20, 30, 40, 50]
index = ['a', 'b', 'c', 'd', 'e']

s = pd.Series(data, index)

print(s['a'])  # 10

2.3 常用属性

2.3.1 index: 标签索引

import pandas as pd

data = [10, 20, 30, 40, 50]

s = pd.Series(data)

print(s.index)
# RangeIndex(start=0, stop=5, step=1)

2.3.2 values: 数据值

import pandas as pd

data = [10, 20, 30, 40, 50]

s = pd.Series(data)

print(s.values)
# [10 20 30 40 50]

2.3.3 dtype: 数据值类型

import pandas as pd

data = [10, 20, 30, 40, 50]

s = pd.Series(data)

print(s.dtype)  # int64

2.3.4 size: 对象的大小

import pandas as pd

data = [10, 20, 30, 40, 50]

s = pd.Series(data)

print(s.size)  # 5

2.3.5 empty: 判断对象是否为空

import pandas as pd

data = []

s = pd.Series(data)

print(s.empty)  # True

2.4 常用方法

2.4.1 head(): 查看前 n 行数据

import pandas as pd

data = [10, 20, 30, 40, 50]

s = pd.Series(data)

print(s.head(3))
# 0    10
# 1    20
# 2    30
# dtype: int64

2.4.2 tail(): 查看后 n 行数据

import pandas as pd

data = [10, 20, 30, 40, 50]

s = pd.Series(data)

print(s.tail(3))
# 2    30
# 3    40
# 4    50
# dtype: int64

2.4.3 isnull(): 检测是否缺失

import pandas as pd

data = [10, 20, 30, 40, 50, None]

s = pd.Series(data)

print(s.isnull())
# 0    False
# 1    False
# 2    False
# 3    False
# 4    False
# 5     True
# dtype: bool

2.4.4 notnull(): 检测是否不缺失

import pandas as pd

data = [10, 20, 30, 40, 50, None]

s = pd.Series(data)

print(s.notnull())
# 0    False
# 1    False
# 2    False
# 3    False
# 4    False
# 5     True
# dtype: bool

3 DataFrame:二维数组

3.1 创建 DataFrame 对象

# 语法格式
import pandas as pd

s = pd.DataFrame(data, index, columns, dtype)
常用参数参数描述
data输入的数据,可以是任何类型,如:列表、字典 等
index行标签。唯一,默认为 np.arrange(n)
columns列标签。唯一,默认为 np.arrange(n)
dtype数据类型。如果没有提供,则会自动判断得出

3.1.1 创建

示例1:一维数组

import pandas as pd

data = [10, 20, 30, 40, 50]

df = pd.DataFrame(data)

print(df)

示例2:二维数组

import pandas as pd

data = [['张三', 10], ['李四', 20], ['王五', 30]]
columns = ['Name', 'Age']

df = pd.DataFrame(data, columns=columns)

print(df)
#     Name  Age
# 0   张三   10
# 1   李四   20
# 2   王五   30

3.1.2 创建并指定索引标签

import pandas as pd

data = [['张三', 10], ['李四', 20], ['王五', 30]]
index = ['a', 'b', 'c']
columns = ['Name', 'Age']

df = pd.DataFrame(data, index, columns)

print(df)
#     Name  Age
# a   张三   10
# b   李四   20
# c   王五   30

3.1.3 创建并指定数据类型

import pandas as pd

data = [['张三', 10], ['李四', 20], ['王五', 30]]
columns = ['Name', 'Age']

df = pd.DataFrame(data, columns=columns, dtype=str)

print(df)
#     Name  Age
# a   张三   10
# b   李四   20
# c   王五   30n

3.2 访问 DataFrame 数据

3.2.1 按行索引访问

import pandas as pd

data = [['张三', 10], ['李四', 20], ['王五', 30]]
columns = ['Name', 'Age']

df = pd.DataFrame(data, columns=columns)

print(df.loc[0])
# Name    张三
# Age     10
# Name: 0, dtype: object

3.2.2 按列索引访问

import pandas as pd

data = [['张三', 10], ['李四', 20], ['王五', 30]]
columns = ['Name', 'Age']

df = pd.DataFrame(data, columns=columns)

print(df['Name'])
# 0    张三
# 1    李四
# 2    王五
# Name: Name, dtype: object

3.3 常用属性和方法

常用属性和方法同 Series 类似,以下仅列举独属于 DataFrame

3.3.1 T:行列互换

  • T:Transpose,转换
import pandas as pd

data = [['张三', 10], ['李四', 20], ['王五', 30]]
columns = ['Name', 'Age']

df = pd.DataFrame(data, columns=columns)

print(df.T)
#        0   1   2
# Name  张三  李四  王五
# Age   10  20  30

http://www.kler.cn/a/394431.html

相关文章:

  • layui动态拼接生成下拉框验证必填项失效问题
  • linux socket编程之udp_dict_serve服务端--引入配置文件
  • Git 的基本概念和使用
  • 3D架构图软件 iCraft Editor 正式发布 @icraftplayer-react 前端组件, 轻松嵌入3D架构图到您的项目,实现数字孪生
  • 专业的内外网数据交换方案 可解决安全、效率、便捷3大问题
  • 【机器学习与数据挖掘实战】案例06:基于Apriori算法的餐饮企业菜品关联分析
  • NFS存储基础操作
  • PostgreSQL 行转列实现
  • 存储大挑战:如何在可靠性与大容量之间玩转平衡术?
  • LabVIEW 使用 Snippet
  • 【Excel】数据透视表分析方法大全
  • 【C++进阶实战】基于linux的天气预报系统
  • CTF攻防世界小白刷题自学笔记15
  • 【Golang】golang框架,为什么选择GoFrame, GoFrame使用心得
  • Electron 项目中杀掉进程的不同方式
  • 《FreeRTOS列表和列表项篇》
  • 6.584-Lab1:MapReduce
  • 深入解析 OpenHarmony 构建系统-1
  • 制作图片木马
  • 为什么海外服务器IP会被封
  • WebKit(适用2024年11月份版本)
  • 笔记--(网络服务4)、远程访问及控制
  • JDBC使用方式(项目由于一些不可逆因素,必须要使用JDBC连接)
  • gcd的递归与非递归实现
  • opencv视频读写
  • 机器学习(1)