Pandas数据结构简要概述

Pandas数据结构

Series数据结构

Series是什么

Series是一种类似于一维数组的对象, 由一组数据及一组与之相关的索引 组成。

创建一个Series

创建一个Series利用的方法是pd.Series(), 通过给Series()方法传入不同的对象即可实现。 传入一个列表

import pandas as pd
​
S1 =pd.Series(['a','b','c'])
print(S1)
#0    a
#1    b
#2    c

指定索引 直接传入一个列表会使用默认索引, 也可以通过设置index参数来 自定义索引。

import pandas as pd
S1 =pd.Series([1,2,3,4],index = ['a','b','c','d'])
print(S1)

利用index方法获取Series的索引

直接利用 index 方法就可以获取 Series的索引值。

import pandas as pd
S1 =pd.Series(['a','b','c'])
print(S1.index)
S2 =pd.Series([1,2,3,4],index = ['a','b','c','d'])
print(S2.index)
​
#RangeIndex(start=0, stop=3, step=1)
#Index(['a', 'b', 'c', 'd'], dtype='object')

利用values方法获取Series的值

与索引值对应的就是获取Series的值, 使用的方法是values方法。

import pandas as pd
​
S1 =pd.Series(['a','b','c'])
print(S1.values)
S2 =pd.Series([1,2,3,4],index = ['a','b','c','d'])
print(S2.values)

 

DataFrame 表格型数据结构

Series是由一组数据与一组索引( 行索引) 组成的数据结构,

DataFrame是由一组数据与一对索引( 行索引和列索引) 组成的表格型数据结构。

下面就是一个简单的DataFrame数据结构。

Pandas数据结构简要概述

之所以叫表格型数据结构, 是因为DataFrame的数据形式和Excel的数据存储形式很相近 。

创建一个DataFrame

创建DataFrame使用的方法是pd.DataFrame(), 通过给DataFrame()方法传入不同的对象(列表)即可实现。

import pandas as pd
​
df1 =pd.DataFrame(['a','b','c','d'])
print(df1)

只传入一个单一列表时, 该列表的值会显示成一列, 且行和列都是从0开始的默认索引。 传入一个嵌套列表

import pandas as pd
​
# df1 =pd.DataFrame(['a','b','c','d'])
# print(df1)
df2 =pd.DataFrame([['a','A'],['b','B'],['c','C'],['d','D']])
print(df2)

当传入一个嵌套列表时, 会根据嵌套列表数显示成多列数据, 行、列索引同样是从0开始的默认索引。 列表里面嵌套的列表也可以换成元组。

import pandas as pd
​
# df2 =pd.DataFrame([['a','A'],['b','B'],['c','C'],['d','D']])
# print(df2)
df2 =pd.DataFrame([('a','A'),('b','B'),('c','C'),('d','D')])
print(df2)

指定行、 列索引

给DataFrame()方法传入列表,可以通过设置columns参数自定义列索引, 设置index参数自定义行索引。

import pandas as pd
​
# df2 =pd.DataFrame([('a','A'),('b','B'),('c','C'),('d','D')])
# print(df2)
df33 =pd.DataFrame([('a','A'),('b','B'),('c','C'),('d','D')],
                   columns= ["小写","大写"],
                   index=["一","二","三","四"]
                   )
print(df33)

传入一个字典

传入一个字典的实现如下所示。

import pandas as pd
​
# df33 =pd.DataFrame([('a','A'),('b','B'),('c','C'),('d','D')],
#                    columns= ["小写","大写"],
#                    index=["一","二","三","四"]
#                    )
# print(df33)
data = {"小写":['a','b','c','d'],"大写":['A','B','C','D']}
df41 = pd.DataFrame(data)
print(df41)

直接以字典的形式传入DataFrame时, 字典的key值就相当于列索引, 这个时候如果没有设置行索引, 行索引还是使用从0开始的默认索引,

同样可以使用index参数自定义行索引。

获取DataFrame的行、 列索引

利用columns方法获取DataFrame的列索引。

利用index方法获取DataFrame的行索引。

import pandas as pd
​
df2 =pd.DataFrame([('a','A'),('b','B'),('c','C'),('d','D')])
# print(df2)
df33 =pd.DataFrame([('a','A'),('b','B'),('c','C'),('d','D')],
                   columns= ["小写","大写"],
                   index=["一","二","三","四"]
                   )
# print(df33)
​
print(df2.columns)
print(df33.index)

获取DataFrame的值

获取DataFrame的值就是获取DataFrame中的某些行或列, 有关行、列的选择在第6章会有详细讲解。

上一篇:AI学习---特征工程(Feature Engineering)


下一篇:python设置index