dataframe基本操作有哪些_上文

目录 :DataFrame常用语法格式如下:

  1. 创建DataFrame
  2. 查看数据前几行
  3. 查看数据后几行
  4. 查看数据基本信息
  5. 描述性统计信息
  6. 选择列
  7. 选择多列
  8. 选择行
  9. 选择特定行与列
  10. 条件条件【Filtering】
  11. 多条件选择
  12. 排序数据
  13. 处理缺失值
  14. 填充缺失值
  15. 新增列
  16. 删除列
  17. 重命名列
  18. 分组统计
  19. 合并DataFrame
  20. 横向合并DataFrame
  21. 透视表
  22. 独热编码
  23. 字符串处理
  24. 日期时间处理
  25. 时间序列重采样
  26. 滑动窗口
  27. 绘制图表
  28. 保存DataFrame到文件
  29. 从加载文件数据到DataFrame
  30. 使用apply函数对列进行操作
  31. 使用map函数进行值替换
  32. 使用cut函数进行分箱操作
  33. 使用groupby和transform进行组内操作
  34. 使用astype进行数据类型转换
  35. 使用isin进行过滤
  36. 使用duplicated和drop_duplicated处理重复值
  37. 使用nlarge和nsmallest获取最大值和最小值
  38. 使用value_counts唯一值的频率
  39. 使用str.contains进行模糊匹配
  40. 使用replace进行值替换
  41. 使用pivot进行数据透视
  42. 使用merge处理重复列名
  43. 使用at和iat快速访问元素
  44. 使用mask进行条件替换
  45. 使用query进行条件查询
  46. 使用crosstab进行交叉表
  47. 使用explode展开列表
  48. 使用agg进行多个聚合操作
  49. 使用pipe进行链式操作

 

1、创建DataFrame

import pandas as pd
 
data = {'ID': [101, 102, 103, 104, 105],
        'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Eva'],
        'Age': [25, 30, 22, 35, 28],
        'Salary': [50000, 60000, 45000, 75000, 55000],
        'Status': ['Active', 'Inactive', 'Active', 'Active', 'Inactive']}
 
df = pd.DataFrame(data)

 

2、查看数据的前几行

df.head()

使用方式: 用于查看的前几行,默认为前5行

示例: 查看前3行数据。

 

3、查看数据的前几行

df.tail(3)

使用方式: 用于查看DataFrame的后几行,默认为后5行

示例: 查看后3行数据。

 

4、查看数据基本信息

df.info()

使用方式: 提供DataFrame的基本信息,包括每列的非空值数量和数据类型。

示例: 查看数据信息。

 

5、描述性统计信息

df.describe()

使用方式: 提供DataFrame的描述性统计信息,包括均值、标准差、最小值、25%分位数、中位数(50%分位数)、75%分位数和最大值。

示例: 查看数值列的统计信息。

 

6、 选择列

df['ColumnName']

使用方式: 通过列名选择DataFrame中的一列。

示例: 选择“Salary”列。

 

7. 选择多列

df[['Column1', 'Column2']]

 使用方式: 通过列名选择DataFrame中的一列。

示例: 选择“Name”和“Age”列。

df[['Name', 'Age']]

 

8. 选择多列

df.loc[index]

使用方式: 通过索引标签选择DataFrame中的一行。

示例: 选择索引为2的行。

 

9、选择特定行和列

df.loc[index, 'ColumnName']

 使用方式: 通过索引标签和列名选择DataFrame中的特定元素。

示例: 选择索引为1的行的“Name”列的值。

df.loc[1, 'Name']

 

10、条件选择(Filtering)

 df[df['ColumnName'] > value]

使用方式: 使用条件过滤选择满足特定条件的行。

示例: 选择年龄大于25的行。

df[df['Age'] > 25]

 

11、 多条件选择

df[(df['Column1'] > value1) & (df['Column2'] == value2)]

使用方式: 使用逻辑运算符(&:与,|:或,~:非)结合多个条件进行过滤。

示例: 选择年龄大于25且状态为“Active”的行。

df[(df['Age'] > 25) & (df['Status'] == 'Active')]

 

 12、 排序

df.sort_values(by='ColumnName', ascending=False)

使用方式: 根据指定列的值进行升序或降序排序。

示例: 按工资降序排序。

df.sort_values(by='Salary', ascending=False)

 

13、处理缺失值

df.dropna()

使用方式: 删除包含缺失值的行。

示例: 删除所有包含缺失值的行。

 

14、填充缺失值

df.fillna(value)

使用方式: 用指定值填充缺失值。

示例: 用均值填充所有缺失值。

df.fillna(df.mean())

 

15、新增列

df['NewColumn'] = values

 使用方式: 新增一列,并为其赋值。

示例: 新增一列表示年龄是否大于30。

 

16、删除列

df.drop('ColumnName', axis=1)

使用方式: 删除指定列。

示例: 删除“Status”列。

df.drop('Status', axis=1)

 

17、 重命名列

df.rename(columns={'OldName': 'NewName'}, inplace=True)

使用方式: 重命名指定列。

示例: 将“ID”列重命名为“EmployeeID”。

df.rename(columns={'ID': 'EmployeeID'}, inplace=True)

 

 18、分组统计

df.groupby('ColumnName').agg({'Column1': 'mean', 'Column2': 'sum'})

使用方式: 按照指定列进行分组,然后进行聚合统计。

示例: 按状态分组,计算平均年龄和总工资。

df.groupby('Status').agg({'Age': 'mean', 'Salary': 'sum'})

 

19、合并DataFrame

pd.concat([df1, df2], axis=0)

使用方式: 沿着指定轴合并两个DataFrame。

示例: 垂直合并两个DataFrame。

pd.concat([df1, df2], axis=0)

 

20、横向合并DataFrame

pd.concat([df1, df2], axis=1)

使用方式: 沿着列方向合并两个DataFrame。

示例: 横向合并两个DataFrame。

 

21、合并DataFrame(基于键)

pd.merge(df1, df2, on='KeyColumn', how='inner')

 

使用方式: 使用指定列进行合并,指定合并方式(内连接、左连接、右连接、外连接)。

示例: 使用“ID”列内连接两个DataFrame。

pd.merge(df1, df2, on='ID', how='inner')

 

 22、透视表

pd.pivot_table(df, values='ValueColumn', index='IndexColumn', columns='ColumnToPivot', aggfunc='mean')

使用方式: 创建透视表,汇总数据。

示例: 创建一个透视表,计算不同状态下的平均工资。

pd.pivot_table(df, values='Salary', index='Status', aggfunc='mean')

 

关注公众号「水沐教育科技」,在手机上阅读所有教程,随时随地都能学习。内含一款搜索神器,免费下载全网书籍和视频。

公众号二维码
微信扫码关注公众号

微信交流群 关注微信公众号,加入官方交流群。内含一款搜索神器,免费下载全网书籍和视频。