数据结构

通用术语对比

pandas Excel
DataFrame 工作表
Series
Index 索引
row
NaN 空值

DataFrame

pandas 中的 dataframe 类似于Excel 工作表。虽然一个 Excel 工作簿可以包含多个工作表,但通常情况下 pandas.DataFrame是独立存在的。

Series

Series是表示 DataFrame一列的数据结构。使用 Series 类似于引用电子表格中的一列。

Index

每个 DataFrame 和 Series 都有一个 Index,它是数据行的标签。在pandas中,如果没有指定索引,则默认使用RangeIndex(第一行= 0,第二行= 1,等等),类似于电子表格中的行标题/数字。
在 pandas 中,索引可以设置为一个(或多个)惟一值,这就像在工作表中有一列用作行标识符一样。与大多数电子表格不同,这些Index值实际上可以用来引用行。(注意,这可以在Excel的结构化引用中完成。)例如,在电子表格中,您可以引用第一行为 A1:Z1,而在 pandas 中,您可以使用population .loc[‘Chicago’]。

常见操作对比

为了更方便介绍 Pandas 相关功能,方便长期使用 Excel 进行数据分析的用户学习,下面是常见操作的 Excel 与 Pandas 实现对比。

1 - 数据读取

Excel

Excel读取本地数据需要打开目标文件夹选中该文件并打开
Pandas 对比 Excel.gif

Pandas

Pandas支持读取本地Excel、txt文件,也支持从网页直接读取表格数据,只用一行代码即可,例如读取上述本地Excel数据可以使用pd.read_excel(“示例数据.xlsx”)

  1. import pandas as pd # 读取的是从第二行数据开始的
  2. print(pd.read_excel("示例数据.xlsx")) #将示例数据.xlsx放在该Notebook同一文件夹下
  3. >>>
  4. 时间 日期 姓名
  5. 0 2 2 3
  6. 1 3 4 5

2 - 数据生成

Excel

以生成10*2的0—1均匀分布随机数矩阵为例,在Excel中需要使用rand()函数生成随机数,并手动拉取指定范围
Pandas 对比 Excel.gif

Pandas

在Pandas中可以结合NumPy生成由指定随机数(均匀分布、正态分布等)生成的矩阵,例如同样生成10*2的0—1均匀分布随机数矩阵为,使用一行代码即可:pd.DataFrame(np.random.rand(10,2))

  1. import numpy as np
  2. df = pd.DataFrame(np.random.rand(10,2))
  3. print(df)
  4. >>>
  5. 0 1
  6. 0 0.319400 0.022976
  7. 1 0.446149 0.999342
  8. 2 0.360090 0.833542
  9. 3 0.841949 0.663591
  10. 4 0.835494 0.977844
  11. 5 0.306999 0.461231
  12. 6 0.827034 0.136040
  13. 7 0.665923 0.902659
  14. 8 0.849979 0.213308
  15. 9 0.581816 0.001081

Excel

在Excel中需要点击保存并设置格式/文件名
Pandas 对比 Excel.gif

Pandas

在Pandas中可以使用pd.to_excel(“filename.xlsx”)来将当前工作表格保存至当前目录下,当然也可以使用to_csv保存为csv等其他格式,也可以使用绝对路径来指定保存位置

  1. data.to_excel("测试数据.xlsx")