深入了解Pandas的数据类型

大家好,Pandas是一个功能强大的数据处理和分析库,它提供了丰富的数据类型,使得数据操作更加灵活和高效。本文我们将深入了解Pandas的数据类型,包括Series和DataFrame。

1.Series

Series是Pandas中最基本的数据类型,它类似于一维数组或列向量。Series由两个数组组成,一个用于存储数据值,另一个用于存储索引。索引可以是整数、字符串或其他类型的值,它们用于标识数据值。

创建一个Series对象非常简单,只需传入一个数据列表和一个索引列表即可:

python 复制代码
import pandas as pd

data = [1, 2, 3, 4, 5]
index = ['a', 'b', 'c', 'd', 'e']

s = pd.Series(data, index)
print(s)

输出结果如下:

复制代码
a    1
b    2
c    3
d    4
e    5
dtype: int64

Series对象的输出包括索引和对应的数据值。我们可以通过索引访问和操作数据值,例如:

python 复制代码
print(s['c'])  # 输出 3
s['e'] = 10  # 修改数据值
print(s)

输出结果如下:

复制代码
3
a     1
b     2
c     3
d     4
e    10
dtype: int64

2.DataFrame

DataFrame是Pandas中最常用的数据类型,它类似于一个二维表格或电子表格。DataFrame由多个Series对象组成,每个Series对象代表一列数据。它具有行和列的索引,可以方便地进行数据的筛选、切片和操作。

创建一个DataFrame对象可以通过多种方式,比如从字典、列表、NumPy数组等创建。下面是一个从字典创建DataFrame的例子:

python 复制代码
import pandas as pd

data = {'Name': ['Alice', 'Bob', 'Charlie'],
        'Age': [25, 30, 35],
        'City': ['New York', 'London', 'Paris']}

df = pd.DataFrame(data)
print(df)

输出结果如下:

复制代码
      Name  Age      City
0    Alice   25  New York
1      Bob   30    London
2  Charlie   35     Paris

DataFrame对象的输出是一个表格,每列由列名标识,每行由行索引标识。我们可以通过列名访问和操作数据,例如:

python 复制代码
print(df['Age'])  # 输出 Age 列的数据
df['Salary'] = [5000, 6000, 7000]  # 添加一列数据
print(df)

输出结果如下:

复制代码
0    25
1    30
2    35
Name: Age, dtype: int64

      Name  Age      City  Salary
0    Alice   25  New York    5000
1      Bob   30    London    6000
2  Charlie   35     Paris    7000

除了列名,我们还可以通过行索引访问和操作数据,例如:

python 复制代码
print(df.loc[1])  # 输出索引为 1 的行数据
df.loc[2, 'City'] = 'Berlin'  # 修改索引为 2 的行的 City 数据
print(df)

输出结果如下:

复制代码
Name        Bob
Age          30
City     London
Salary     6000
Name: 1, dtype: object

      Name  Age      City  Salary
0    Alice   25  New York    5000
1      Bob   30    London    6000
2  Charlie   35    Berlin    7000

Pandas提供了强大的数据类型,包括Series和DataFrame,使得数据处理和分析更加方便和高效。通过Series和DataFrame,我们可以轻松地进行数据的操作、筛选、切片和转换。

相关推荐
Smoothcloud_润云5 分钟前
Hermes Agent 的上下文记忆机制:一个开源 Agent 是怎么"记住"你的
人工智能·agent·gpu
早点睡啊6 分钟前
精读 LangChain 官方文档(一)总览、安装与快速开始:从 create_agent 跑通第一个智能体
人工智能
牛奶27 分钟前
AI时代裁员后:清零是君子豹变
人工智能·程序员
武子康30 分钟前
调查研究-191 SenseVoice 不只是 ASR:把语音从“转文字“升级成“理解状态“
人工智能·深度学习·openai
程序员cxuan2 小时前
Codex 会把磁盘给烧了?完整复盘来了!
人工智能·后端·程序员
甲维斯2 小时前
字节版“Codex”初体验,Seed 2.1pro所有人免费用!
人工智能·ai编程·豆包marscode
半个落月3 小时前
从 Tokenization 到 Embedding:用 Node.js 搞懂大模型为什么先“分词”再“向量化”
人工智能·node.js
vanuan3 小时前
MCP协议实战(Java版):用Spring Boot让AI直接查你的数据库
人工智能
雪隐4 小时前
个人电脑玩AI-06让5060 Ti给你打工——不光能画画,Qwen3-TTS还能学人说话,连我老板都信了!
人工智能·后端·python
Coffeeee4 小时前
帮你快速理解AI Agent之我想招个Android实习生
android·人工智能·agent