Pandas 是一个强大的 Python 数据分析库,主要用于处理和操作结构化数据,如表格数据。它提供了高效的数据结构,如 DataFrame 和 Series,能够帮助用户快速进行数据清洗、转换和分析。Pandas 在数据科学领域被广泛使用,是数据处理和分析的核心工具之一。
Pandas 可以通过 Python 的包管理工具 pip 进行安装:
pip install pandas安装完成后,可以通过以下代码导入 Pandas:
import pandas as pdPandas 的核心数据结构是 DataFrame 和 Series。
import pandas as pddata = { 'A': [1, 2, 3], 'B': ['a', 'b', 'c'], 'C': [True, False, True]}df = pd.DataFrame(data)print(df)输出:
A B C0 1 a True1 2 b False2 3 c Trueprint(df.head()) # 默认显示前5行print(df.tail()) # 默认显示后5行print(df.columns)Pandas 提供了多种处理缺失值的方法,如删除、填充等。
df.dropna()df.fillna(0) # 将缺失值填充为0print(df.duplicated().any()) # True 或 Falsedf.drop_duplicates()df['A'] = df['A'].astype('float64')Pandas 支持多种数据合并方式,如按列合并、按行合并等。
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})df2 = pd.DataFrame({'A': [7, 8, 9], 'B': [10, 11, 12]})merged_df = pd.concat([df1, df2]) # 按列合并print(merged_df)输出:
A B0 1 41 2 52 3 63 7 104 8 115 9 12df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})df2 = pd.DataFrame({'C': [7, 8, 9], 'D': [10, 11, 12]})merged_df = pd.merge(df1, df2, how='outer')print(merged_df)输出:
A B C D0 1 4 7 101 2 5 8 112 3 6 9 12Pandas 提供了强大的数据重塑功能,如透视表、熔化等。
df = pd.DataFrame({ 'A': ['a', 'a', 'b', 'b'], 'B': [1, 2, 3, 4], 'C': [5, 6, 7, 8]})pivot_df = pd.pivot_table(df, values='C', index='A', columns='B')print(pivot_df)输出:
B 1 2 3 4A a 5 6 NaN NaNb NaN NaN 7 8df = pd.DataFrame({ 'A': ['a', 'a', 'b', 'b'], 'B': [1, 2, 3, 4], 'C': [5, 6, 7, 8]})melted_df = df.melt(id_vars=['A'], value_vars=['B', 'C'])print(melted_df)输出:
A variable value0 a B 11 a B 22 b B 33 b B 44 a C 55 a C 66 b C 77 b C 8Pandas 提供了多种文本处理功能,如字符串分割、连接、替换等。
df = pd.DataFrame({'text': ['Hello World', 'Python Programming', 'Data Analysis']})df['words'] = df['text'].str.split()print(df)输出:
text words0 Hello World [Hello, World]1 Python Programming [Python, Programming]2 Data Analysis [Data, Analysis]df = pd.DataFrame({'text': ['Hello World', 'Python Programming', 'Data Analysis']})df['text'] = df['text'].str.replace(' ', '_')print(df)输出:
text0 Hello_World1 Python_Programming2 Data_AnalysisPandas 提供了强大的分组和聚合功能,可以对数据进行分组统计。
df = pd.DataFrame({ 'A': ['a', 'a', 'b', 'b'], 'B': [1, 2, 3, 4], 'C': [5, 6, 7, 8]})grouped_df = df.groupby('A').agg({'B': 'sum', 'C': 'mean'})print(grouped_df)输出:
B CA a 3 5.5b 7 7.5Pandas 对时间序列数据处理有强大的支持,可以进行时间戳操作、时间窗口计算等。
import pandas as pddate_range = pd.date_range(start='2023-01-01', periods=5, freq='D')print(date_range)输出:
DatetimeIndex(['2023-01-01', '2023-01-02', '2023-01-03', '2023-01-04', '2023-01-05'], dtype='datetime64[ns]', length=5, start='2023-01-01', end='2023-01-05')如果您希望进一步学习 Pandas,可以通过以下资源进行深入学习:
Pandas 是一个功能强大的数据分析工具,能够帮助您快速处理和分析数据。通过本文的学习,您已经掌握了 Pandas 的基本用法和一些实战技巧。如果您希望进一步提升您的数据分析能力,可以尝试将 Pandas 应用于更多的实际项目中,并结合其他数据分析工具(如 NumPy、Matplotlib 等)进行更深入的分析。
如果您对更高级的数据分析工具感兴趣,不妨申请试用 DTStack,体验更多强大的数据分析功能。
申请试用&下载资料