在 Jupyter Notebook 中使用 Pandas 进行数据操作

  1. 安装与导入 Pandas

    • 使用 pip 安装 Pandas:

      bash 复制代码
      pip install pandas
      pip install openpyxl
    • 在 notebook 中导入 Pandas 库,通常使用以下别名以方便书写:

      python 复制代码
      import pandas as pd
  2. 读取数据到 DataFrame

    • 从 CSV 文件加载数据:

      python 复制代码
      df = pd.read_csv('your_file.csv')
    • 查看数据的前几行:

      python 复制代码
      df.head()
  3. 查看数据信息

    • 查看数据的基本信息,如形状、列名等:

      python 复制代码
      print(df.shape)  # 输出数据框的行数和列数
      print(df.columns)  # 输出列名
  4. 数据清洗

    • 检查缺失值:

      python 复制代码
      df.isnull().sum()  # 统计每一列的缺失值数量
    • 删除包含缺失值的行:

      python 复制代码
      df.dropna()
    • 填充缺失值(例如用均值填充):

      python 复制代码
      df['column_name'].fillna(df['column_name'].mean(), inplace=True)
  5. 数据分析与操作

    • 进行基本的统计分析:

      python 复制代码
      df.describe()  # 输出数据的汇总统计信息
    • 按某一列分组并计算均值:

      python 复制代码
      df.groupby('column_name').mean()
  6. 筛选特定列

    • 如果你想只关注某些列,可以使用columns参数或简单的索引:

    • 选择单个列:

      python 复制代码
      gender = df['Sex']
    • 选择多个列:

      python 复制代码
      selected_columns = df[['Sex', 'Age']]
  7. 根据条件筛选行

    • 使用布尔掩码来筛选满足特定条件的行。例如,筛选出女性乘客:

      python 复制代码
      female_passengers = df[df['Sex'] == 'female']
    • 或者更简洁地写在一起:

      python 复制代码
      selected_df = df[(df['Age'] > 30) & (df['Sex'] == 'male')]
  8. 可视化数据

    • 使用 Matplotlib 或 Seaborn 绘制图表。例如,绘制柱状图:

      python 复制代码
      import matplotlib.pyplot as plt
      df['column_name'].value_counts().plot(kind='bar')
      plt.show()
  9. 保存 DataFrame 到文件

    • 将处理后的数据保存回 CSV 文件:

      python 复制代码
      import os
      folder_path = './outputs/nba'
      os.makedirs(folder_path, exist_ok=True)
      df.to_csv(folder_path+'processed_file.csv', index=False)  # 不包含索引列
  10. 使用 Markdown 添加说明

  • 在 notebook 中,使用 Markdown 单元格添加解释性文字,使分析过程更加清晰。

示例:完整的 Jupyter Notebook 使用 Pandas 的代码

python 复制代码
# 导入Pandas库
import pandas as pd

# 读取CSV文件
df = pd.read_csv('data.csv')

# 查看数据的前五行
print("前五行数据:")
print(df.head())

# 检查缺失值
print("\n检查缺失值情况:")
print(df.isnull().sum())

# 删除包含缺失值的行
df.dropna(inplace=True)

# 填充缺失值(假设填充列 'A' 的均值)
df['A'].fillna(df['A'].mean(), inplace=True)

# 统计描述
print("\n数据统计:")
print(df.describe())

# 按某一列分组并计算均值
grouped_df = df.groupby('category').mean()
print("\n按类别分组后的均值:")
print(grouped_df)

# 可视化 - 绘制柱状图(以 'A' 列为例)
import matplotlib.pyplot as plt

df['A'].value_counts().plot(kind='bar')
plt.title('分布情况')
plt.xlabel('数值')
plt.ylabel('数量')
plt.show()

# 保存处理后的数据
df.to_csv('processed_data.csv', index=False)

总结

通过以上步骤,可以在 Jupyter Notebook 中熟练地使用 Pandas 进行数据操作。从数据的读取、清洗、分析到可视化和保存,每一步都有其重要作用。结合 Markdown 单元格添加说明文字,可以使整个数据分析流程更加直观和易于理解。不断实践和探索不同的功能与方法,将有助于提高数据分析的效率和质量。

相关推荐
Diligently_12 天前
idea 中vm option 配置
java·ide·intellij-idea
我命由我1234512 天前
在 Android Studio 中,新建 AIDL 文件按钮是灰色
android·ide·android studio·安卓·android jetpack·android-studio·android runtime
AC赳赳老秦12 天前
云原生AI故障排查新趋势:利用DeepSeek实现高效定位部署报错与性能瓶颈
ide·人工智能·python·云原生·prometheus·ai-native·deepseek
被制作时长两年半的个人练习生12 天前
claude code for vscode 配置 qwen3.5
ide·vscode·claude code·qwen3.5
开发者小天12 天前
python中使用jupyter notebook 绘制正态分布直方图 密度图 小提琴图 模仿企鹅喙长分布图
开发语言·python·jupyter
圣心12 天前
Visual Studio Code 中的 AI 智能操作
ide·人工智能·vscode
吹牛不交税12 天前
关于vscode左侧资源管理器目录层级疑似异常的问题
ide·vscode·编辑器
xixi092412 天前
selenium IDE安装使用教程
ide·selenium·测试工具
西门吹-禅12 天前
【eclipse 升级】
java·ide·eclipse
code bean13 天前
Visual Studio 2026 离线安装包制作指南
ide·visual studio