📅  最后修改于: 2023-12-03 15:36:32.853000             🧑  作者: Mango
Pandas 是 Python 中一个强大的数据分析库,它提供了广泛的数据分析工具,包括数据清洗、数据转换、数据分组、数据聚合等。它的数据结构非常简单易用,并且可以配合其他 Python 库如 NumPy、Matplotlib 进行实现复杂的数据分析。
使用 pip 安装最新版本的 Pandas:
pip install pandas
Pandas 最基本的数据结构是 Series 和 DataFrame。
一个 Series 可以看作由一个序列的值以及对应的标签组成,即一维数组。我们可以通过以下方式创建一个 Series:
import pandas as pd
s = pd.Series([1, 3, 5, 7, 9])
print(s)
输出结果:
0 1
1 3
2 5
3 7
4 9
dtype: int64
一个 DataFrame 是一个多维数组,可以看作是多个 Series 组成。我们可以通过以下方式创建一个 DataFrame:
import pandas as pd
import numpy as np
data = {
'name': ['Alice', 'Bob', 'Charlie', 'David', 'Eva'],
'age': [23, 45, 22, 37, 28],
'gender': ['F', 'M', 'M', 'M', 'F'],
'city': ['Beijing', 'Shanghai', 'Shanghai', 'Beijing', 'Beijing']
}
df = pd.DataFrame(data)
print(df)
输出结果:
name age gender city
0 Alice 23 F Beijing
1 Bob 45 M Shanghai
2 Charlie 22 M Shanghai
3 David 37 M Beijing
4 Eva 28 F Beijing
一旦我们有了 Pandas 数据对象,我们就可以进行各种各样的数据操作了。
可以使用 df['column_name']
或者 df.column_name
从 DataFrame 中选择一列数据,也可以使用 df.loc[row_index, column_name]
和 df.iloc[row_index, column_index]
来选择指定的数据。
可以使用条件语句来过滤 DataFrame 数据,如:
df[df.age > 30]
可以使用 sort_values()
来对指定的列进行排序。
df.sort_values('age', ascending=False)
使用 groupby()
方法可以按照某些列来进行分组,然后使用聚合函数如 sum()
、mean()
、count()
等来进行聚合操作。
df.groupby('gender').mean()
在数据分析过程中,我们可能需要对数据进行一些清洗。
可以使用 drop_duplicates()
方法来进行数据去重。
df.drop_duplicates()
可以使用 fillna()
方法来将缺失值填充为指定的值或者通过一定的方式计算缺失值,也可以使用 dropna()
方法来删除缺失值所在的行或列。
df.fillna(0)
df.dropna()
Pandas 支持多种文件格式的导入和导出,包括 CSV、Excel、JSON、SQL 等。
导入 CSV 文件:
df = pd.read_csv('data.csv')
导出 CSV 文件:
df.to_csv('data.csv', index=False)
导入 Excel 文件:
df = pd.read_excel('data.xlsx', sheet_name='Sheet1')
导出 Excel 文件:
df.to_excel('data.xlsx', sheet_name='Sheet1', index=False)
导入 JSON 文件:
df = pd.read_json('data.json')
导出 JSON 文件:
df.to_json('data.json', orient='records')
Pandas 提供了丰富的数据分析工具,可以帮助我们更方便地进行数据处理和数据分析。同时,Pandas 的数据结构和常用的数据操作和其他 Python 库相兼容,可以进一步扩展数据分析的能力。