前文
文章目录
Series
Series 是一种类似于一维数组的对象,它由一组数据(不同数据类型)以及一组与之相关的数据标签(即索引)组成
仅有数据列表即可产生最简单的 Series
# author : Woo_home
# create_time : 2020/7/18 11:33
import pandas as pd
s1 = pd.Series([1,'a',5.2,7])
print(s1)
输出:
在输出结果中,左侧为索引,右侧为数据
获取索引
# author : Woo_home
# create_time : 2020/7/18 11:33
import pandas as pd
s1 = pd.Series([1,'a',5.2,7])
# 获取 Series 的索引
print(s1.index)
输出:
获取数据
# author : Woo_home
# create_time : 2020/7/18 11:33
import pandas as pd
s1 = pd.Series([1,'a',5.2,7])
print(s1.values)
输出:
创建一个具有标签索引的 Series
使用 index 属性,可以指定索引名称
# author : Woo_home
# create_time : 2020/7/18 11:33
import pandas as pd
s1 = pd.Series([1, 'a', 5.2, 7], index=['a', 'b', 'c', 'd'])
print(s1)
输出:
获取索引名称
# author : Woo_home
# create_time : 2020/7/18 11:33
import pandas as pd
s1 = pd.Series([1, 'a', 5.2, 7], index=['a', 'b', 'c', 'd'])
print(s1.index)
输出:
使用 Python 字典创建 Series
# author : Woo_home
# create_time : 2020/7/18 11:33
import pandas as pd
# 定义一个字典
data = {
'id': 1,
'name': 'Lisa',
'age': 18
}
series_data = pd.Series(data)
print(series_data)
输出:
根据标签索引查询数据
比如我们想获取字典中某个键对应的值,那么可以这样做:
# author : Woo_home
# create_time : 2020/7/18 11:33
import pandas as pd
# 定义一个字典
data = {
'id': 1,
'name': 'Lisa',
'age': 18
}
series_data = pd.Series(data)
print(series_data['id']) # 获取 id 对应的值
print(series_data['name']) # 获取 name 对应的值
输出:
或者也可以这样
print(series_data[['id','name']])
输出:
DataFrame
DataFrame 是一个表格类型的数据结构
- 每列可以是不同的值类型(数值、字符串、布尔值等)
- 既有行索引 index,也有列索引 columns
- 可以被看做由 Series 组成的字典
根据多个字典序列创建 DataFrame
# author : Woo_home
# create_time : 2020/7/18 11:33
import pandas as pd
# 定义一个字典
data = {
'id': [1, 2, 3, 4, 5],
'name': ['lisa', 'john', 'ling', 'sire', 'demo'],
'age': [11, 12, 12, 15, 18]
}
series_data = pd.DataFrame(data)
print(series_data)
输出:
打印值的类型
print(series_data.dtypes)
输出:
打印列名
print(series_data.columns)
输出:
打印索引
print(series_data.index)
输出:
从 DataFrame 中查询出 Series
- 如果只查询一行、一列,返回的是 pd.Series
- 如果查询多行、多列,返回的是 pd.DataFrame
还是以这个字典为例
# 定义一个字典
data = {
'id': [1, 2, 3, 4, 5],
'name': ['lisa', 'john', 'ling', 'sire', 'demo'],
'age': [11, 12, 12, 15, 18]
}
查询一列,结果是一个 pd.Series
# author : Woo_home
# create_time : 2020/7/18 11:33
import pandas as pd
# 定义一个字典
data = {
'id': [1, 2, 3, 4, 5],
'name': ['lisa', 'john', 'ling', 'sire', 'demo'],
'age': [11, 12, 12, 15, 18]
}
series_data = pd.DataFrame(data)
# 打印一列
print(series_data['name'])
print()
print(type(series_data['name']))
输出:
可以发现,输出确实是一个 Series 对象
查询多列,结果是一个 pd.DataFrame
# author : Woo_home
# create_time : 2020/7/18 11:33
import pandas as pd
# 定义一个字典
data = {
'id': [1, 2, 3, 4, 5],
'name': ['lisa', 'john', 'ling', 'sire', 'demo'],
'age': [11, 12, 12, 15, 18]
}
series_data = pd.DataFrame(data)
# 打印多列
print(series_data[['id', 'name']])
print()
print(type(series_data[['id', 'name']]))
输出:
从输出结果可以发现,当我们打印多列时,是一个 DataFrame
查询一行,结果是一个 pd.Series
# author : Woo_home
# create_time : 2020/7/18 11:33
import pandas as pd
# 定义一个字典
data = {
'id': [1, 2, 3, 4, 5],
'name': ['lisa', 'john', 'ling', 'sire', 'demo'],
'age': [11, 12, 12, 15, 18]
}
series_data = pd.DataFrame(data)
# 打印一行
print(series_data.loc[1])
print()
print(type(series_data.loc[1]))
输出:
从输出结果可以发现,当打印一行时,是一个 Series 对象
查询多行,结果是一个 DataFrame
# author : Woo_home
# create_time : 2020/7/18 11:33
import pandas as pd
# 定义一个字典
data = {
'id': [1, 2, 3, 4, 5],
'name': ['lisa', 'john', 'ling', 'sire', 'demo'],
'age': [11, 12, 12, 15, 18]
}
series_data = pd.DataFrame(data)
# 打印索引从 0 开始到最后的数据
print(series_data.loc[0:])
print()
print(type(series_data.loc[0:]))
输出:
从输出结果可以发现,当打印多行数据的时候,是一个 DataFrame