核心数据结构

pandas最核心的就是SeriesDataFrame两个数据结构。

名称 维度 说明
Series 1维 带有标签的同构类型数组
DataFrame 2维 表格结构,带有标签,大小可变,且可以包含异构的数据列

DataFrame可以看做是Series的容器,即:一个DataFrame中可以包含若干个Series。

series

由于Series是一堆结构的数据,我们可以直接通过数组来创建这种数据,像这样:

import pandas as pd
import numpy as np
 
series1 = pd.Series([1, 2, 3, 4])
print("series1:\n{}\n".format(series1))

# series1:
# 0    1
# 1    2
# 2    3
# 3    4
# dtype: int64
  • 输出的最后一行是Series中数据的类型,这里的数据都是int64类型的。
  • 数据在第二列输出,第一列是数据的索引

我们分别打印出Series中的数据和索引

print("series1.values: {}\n".format(series1.values))
 
print("series1.index: {}\n".format(series1.index))

# series1.values: [1 2 3 4]
# series1.index: RangeIndex(start=0, stop=4, step=1)

我们可以指定索引的类型,例如字符串

series2 = pd.Series([1, 2, 3, 4, 5, 6, 7],
index=["C", "D", "E", "F", "G", "A", "B"])
print("series2:\n{}\n".format(series2))
print("E is {}\n".format(series2["E"]))

# series2:
# C    1
# D    2
# E    3
# F    4
# G    5
# A    6
# B    7
# dtype: int64

# E is 3

DataFrame

通过Numpy接口来创建一个4x4的矩阵,以此来创建DataFrame

 1 import pandas as pd
 2 import numpy as np
 3  
 4 df1 = pd.DataFrame(np.arange(16).reshape(4,4))
 5 print("df1:\n{}\n".format(df1))
 6 
 7 # df1:
 8 #     0   1   2   3
 9 # 0   0   1   2   3
10 # 1   4   5   6   7
11 # 2   8   9  10  11
12 # 3  12  13  14  15
View Code

相关文章: