在 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 单元格添加说明文字,可以使整个数据分析流程更加直观和易于理解。不断实践和探索不同的功能与方法,将有助于提高数据分析的效率和质量。

相关推荐
Jennifer33K8 小时前
IDEA 调用 Generate 生成 Getter/Setter 快捷键
java·ide·intellij-idea
拾忆-eleven12 小时前
《当VSCode遇见DeepSeek:AI辅助编程实战手册》
ide·vscode·编辑器
$大江东去$13 小时前
intellj idea 2024.1
java·ide·intellij-idea
红豆和绿豆13 小时前
VSCode如何安装虚拟环境
ide·vscode·编辑器
旺仔溜溜没15 小时前
在pycharm中搭建yolo11分类检测系统1--PyQt5学习(一)
ide·python·qt·学习·pycharm
hu_yuchen18 小时前
如何使用PyCharm自动化测试
ide·python·pycharm
fengwuJ19 小时前
Idea忽略已提交文件
java·ide·git·intellij-idea·ignore
Code_流苏20 小时前
《Python星球日记》第25天:Pandas 数据分析
python·数据分析·pandas·数据聚合·时间序列
_玖-幽20 小时前
Python 数据分析01 环境搭建教程
大数据·python·jupyter
吴同学是个程序员1 天前
【Android】Android Studio 配置国内镜像源
android·ide·gradle·android studio·hosts