您的位置 首页 编程知识

熊猫备忘单

熊猫综合指南:终极备忘单 pandas 是一个基于 构建的开源数据操作和分析库。它提供了易于使用的数据结构,例…

熊猫备忘单

熊猫综合指南:终极备忘单

pandas 是一个基于 构建的开源数据操作和分析库。它提供了易于使用的数据结构,例如 dataframe 和 series,有助于各种数据分析任务的数据处理。它广泛用于处理结构化数据、数据清理和准备,这是数据科学工作流程中的关键步骤。无论是时间序列数据、异构数据,还是 csv、excel、sql 数据库或 json 格式的数据,pandas 都提供了强大的工具,使处理这些数据变得更加容易。


1.进口熊猫

在使用 pandas 的任何功能之前,您需要导入库。它通常被导入为 pd 以保持语法简洁。

  import pandas as pd   
登录后复制

2.熊猫数据结构

系列

series 是一个一维标记数组,能够保存任何数据类型(整数、字符串、浮点数等)。它可以从列表、numpy 数组或字典创建。

  # create a pandas series from a list s = pd.series([1, 2, 3, 4])   
登录后复制

预期输出:

  0    1 1    2 2    3 3    4 dtype: int64   
登录后复制

数据框

dataframe 是一种二维标记数据结构,类似于数据库中的表格或 excel 电子表格。它由行和列组成。每列可以有不同的数据类型。

  # create a dataframe from a dictionary data = {'name': ['alice', 'bob', 'charlie'], 'age': [24, 27, 22], 'city': ['new york', 'london', 'berlin']} df = pd.dataframe(data)   
登录后复制

预期输出:

        name  age      city 0    alice   24  new york 1      bob   27    london 2  charlie   22    berlin   
登录后复制

3.创建数据框和系列

来自字典

  data = {'col1': [1, 2, 3], 'col2': [4, 5, 6]} df = pd.dataframe(data)   
登录后复制

来自列表的列表

  data = [[1, 2, 3], [4, 5, 6]] df = pd.dataframe(data, columns=["a", "b", "c"])   
登录后复制

预期输出:

     a  b  c 0  1  2  3 1  4  5  6   
登录后复制

4.检查数据帧

pandas 提供了多种方法来检查和获取有关数据的信息。

  • df.head(n) – 返回前 n 行。
  • df.tail(n) – 返回最后 n 行。
  • df.info() – 提供有关 dataframe 的摘要信息。
  • df.describe() – 生成 dataframe 的描述性统计数据。
  # inspecting the dataframe print(df.head()) print(df.tail()) print(df.info()) print(df.describe())   
登录后复制

预期输出:

     a  b  c 0  1  2  3 1  4  5  6     a  b  c 0  1  2  3 1  4  5  6  <class> rangeindex: 2 entries, 0 to 1 data columns (total 3 columns):  #   column  non-null count  dtype ---  ------  --------------  -----  0   a       2 non-null      int64  1   b       2 non-null      int64  2   c       2 non-null      int64 dtypes: int64(3) memory usage: 128.0 bytes         a    b    c count  2.0  2.0  2.0 mean   2.5  3.5  4.5 std    2.1  2.1  2.1 min    1.0  2.0  3.0 25%    1.5  2.5  3.5 50%    2.0  3.0  4.0 75%    2.5  3.5  4.5 max    4.0  5.0  6.0   </class>
登录后复制

5.索引、切片和子集数据

访问列

您可以使用点表示法或使用方括号索引来访问列。

  # dot notation print(df.a)  # bracket notation print(df["b"])   
登录后复制

通过索引访问行

您可以使用 .iloc[] 进行基于整数位置的索引,使用 .loc[] 进行基于标签的索引。

  # using iloc (index-based) print(df.iloc[0])  # access first row  # using loc (label-based) print(df.loc[0])  # access first row using label   
登录后复制

切片数据

您可以对 dataframe 进行切片来获取数据子集。您可以对行或列进行切片。

  # select specific rows and columns subset = df.loc[0:1, ["a", "c"]]   
登录后复制

预期输出:

     a  c 0  1  3 1  4  6   
登录后复制

6.修改数据框

添加列

您可以通过分配值直接向 dataframe 添加列。

  df['d'] = [7, 8]  # adding a new column   
登录后复制

修改列值

您可以通过访问列并分配新值来修改列的值。

  df['a'] = df['a'] * 2  # modify the 'a' column   
登录后复制

删除列或行

您可以使用 drop() 函数删除行或列。

  df = df.drop(columns=['d'])  # dropping a column df = df.drop(index=1)  # dropping a row by index   
登录后复制

7.处理缺失数据

处理丢失的数据是一项关键任务。 pandas 提供了几个函数来处理丢失的数据。

  • df.isnull() – 检测缺失值(返回布尔值的 dataframe)。
  • df.notnull() – 检测非缺失值(返回布尔值的 dataframe)。
  • df.fillna(value) – 用指定值填充缺失值。
  • df.dropna() – 删除缺少值的行。
  df = df.fillna(0)  # fill missing data with 0 df = df.dropna()  # drop rows with any missing values   
登录后复制

8.数据聚合和分组

分组依据

groupby() 函数用于将数据分组,应用函数,然后组合结果。

  # grouping by a column and calculating the sum grouped = df.groupby('city').sum()   
登录后复制

您可以应用各种聚合函数,如 sum()、mean()、min()、max() 等

  # aggregating data using mean df.groupby('city').mean()   
登录后复制

9.排序和排名

对数据进行排序

您可以使用 sort_values() 函数按一列或多列对 dataframe 进行排序。

  # sorting by a column in ascending order df_sorted = df.sort_values(by='age')  # sorting by multiple columns df_sorted = df.sort_values(by=['age', 'name'], ascending=[true, false])   
登录后复制

排名

您可以使用rank()对dataframe中的值进行排名。

  df['rank'] = df['age'].rank()   
登录后复制

10。合并、连接和连接 dataframe

合并数据帧

您可以基于公共列或索引合并两个 dataframe。

  df1 = pd.dataframe({'a': ['a0', 'a1', 'a2'], 'b': ['b0', 'b1', 'b2']}) df2 = pd.dataframe({'a': ['a0', 'a1', 'a2'], 'c': ['c0', 'c1', 'c2']}) merged_df = pd.merge(df1, df2, on='a')   
登录后复制

连接数据帧

您可以使用 concat() 沿行或列连接 dataframe。

  df1 = pd.DataFrame([[1, 2], [3, 4]], columns=['A', 'B']) df2 = pd.DataFrame([[5, 6], [7, 8]], columns=['A', 'B']) concat_df = pd.concat([df1, df2], axis=0)   
登录后复制

结论

pandas 是一种用于数据操作的多功能工具,从导入和清理数据到执行复杂的操作。此备忘单提供了一些最常见的 pandas 功能的快速概述,帮助您提高数据分析工作流程的效率。

以上就是熊猫备忘单的详细内容,更多请关注php中文网其它相关文章!

本文来自网络,不代表四平甲倪网络网站制作专家立场,转载请注明出处:http://www.elephantgpt.cn/2574.html

作者: nijia

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

联系我们

联系我们

18844404989

在线咨询: QQ交谈

邮箱: 641522856@qq.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部