Python 的 Pandas 库是数据迷信畛域中十分重要的一个库,它使数据荡涤和剖析工作变得更快更简略。Pandas 联合了 NumPy 的高性能数组计算性能以及电子表格和关系型数据库(如 SQL)的灵便数据处理能力。
一、Pandas 的数据结构
Pandas 次要有两种数据结构:Series
和 DataFrame
。
1. Series
Series
是一种相似于一维数组的对象,它由一组数据和一组与之相干的数据标签(即索引)组成。
import pandas as pd
s = pd.Series([1, 3, 5, np.nan, 6, 8])
print(s)
2. DataFrame
DataFrame
是一种二维的表格型数据结构,每列能够是不同的值类型(数值、字符串、布尔值等)。DataFrame 既有行索引也有列索引,它能够被看做由 Series 组成的字典(共用同一个索引)。
import pandas as pd
data = {'Country': ['Belgium', 'India', 'Brazil'],
'Capital': ['Brussels', 'New Delhi', 'Brasília'],
'Population': [11190846, 1303171035, 207847528]}
df = pd.DataFrame(data, columns=["Country", "Capital", "Population"])
print(df)
二、数据读取与写入
Pandas 提供了一些用于将表格型数据读取为 DataFrame 对象的函数,反对多种格局的数据,如 csv、excel、json、html、sql 等。
import pandas as pd
# 从 CSV 文件中读取数据
df = pd.read_csv('file.csv')
# 将数据写入 CSV 文件中
df.to_csv('file.csv')
三、数据抉择与操作
Pandas 提供了多种形式进行数据的抉择与操作。
import pandas as pd
# 创立一个数据集
data = {'Name': ['Tom', 'Nick', 'John', 'Tom'],
'Age': [20, 21, 19, 20],
'Country':['US', 'UK', 'US', 'UK']}
df = pd.DataFrame(data)
# 抉择 'Name' 列
df['Name']
# 抉择第 0 行
df.iloc[0]
# 抉择满足条件的行
df[df.Age > 20]
# 对 'Age' 列进行求和
df['Age'].sum()
# 对 'Country' 列进行计数
df['Country'].value_counts()
Pandas 的性能远不止这些,还包含合并、分组、缺失数据处理、数据透视表等高级性能,为数据处理和剖析提供了弱小的工具。