Pandas 数据结构 - DataFrame


Pandas数据结构 - DataFrame

简介

DataFrame是Pandas中最常见的数据结构之一,可以看做是由多个Series按列组合而成的表格型数据结构,与Excel中的数据表非常相似。DataFrame中最基本的单位是Series,因此DataFrame常用于表现二维矩阵形式的数据。DataFrame是一种灵活高效的工具,支持多种数据操作和分析。

创建DataFrame

使用Pandas可以从多种数据源创建DataFrame,最常用的方法是读取CSV文件,同时还可以从Excel、SQL数据库或者Python数据结构等多种数据源中创建DataFrame。下面是一个从CSV文件创建DataFrame的例子:

import pandas as pd

data = pd.read_csv('data.csv')
df = pd.DataFrame(data)
print(df)

此外还可以使用字典或者嵌套字典来创建DataFrame:

import pandas as pd

# 从字典创建
data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)

# 从嵌套字典创建
data = {'A': {'a': 1, 'b': 2, 'c': 3},
        'B': {'a': 4, 'b': 5, 'c': 6}}
df = pd.DataFrame(data)

数据访问

DataFrame的访问方式与Series类似,可以使用位置、标签、切片等方式进行数据的读取和赋值。通过索引,可以获取DataFrame中的某一列,也可以通过切片获取DataFrame中的某几行,例如:

import pandas as pd

data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
print(df['A'])  # 获取'A'列
print(df.loc[0:1])  # 获取第0、1行数据

数据操作

DataFrame支持多种数据操作和分析,例如数据的筛选、聚合、转置等操作。

数据筛选

DataFrame中可以通过布尔索引、位置和标签定位的方式实现数据的筛选。例如:

import pandas as pd

data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
print(df[df['A'] > 1])  # 筛选'A'列中数值大于1的行

数据聚合

通过DataFrame中的groupby方法可以实现数据的聚合操作,可以按照指定的列中的值进行分组并对每组进行聚合操作。例如:

import pandas as pd

data = {'A': ['a', 'a', 'b', 'b'], 'B': [1, 2, 3, 4]}
df = pd.DataFrame(data)
print(df.groupby('A').sum())  # 按'A'列进行聚合求和操作

数据转置

通过DataFrame中的T属性可以实现数据的转置操作,将行和列互换。例如:

import pandas as pd

data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
print(df.T)  # 转置

总结

本文介绍了Pandas数据结构中最常见的一种数据结构 - DataFrame,讲解了DataFrame的创建、数据访问、数据操作等方面,可以帮助读者更好地使用DataFrame进行数据操作和分析。DataFrame是Pandas中一种非常灵活的数据结构,可以支持多种数据操作和分析,是进行数据处理的不可或缺的工具之一。