学完了numpy,相信大家感受到了它的强大之处,今天我们来学习新的python库之pandas,它和numpy密切相关,我们不管是工作还是学习,数据分析的时候都会用到,pandas主要用于表格式数据,方便我们在视觉上观察。接下来跟我一起来学习吧!相信我,你会爱上pandas的!
文章目录
一、创建数据及查看数据属性
1.1、Series
1.1.1、通过列表创建数据
import pandas as pd
import numpy as np
data = [1,2,3,4]
s = pd.Series(data=data)
print('--------------不写index默认索引从0开始------------------------------')
print(s)
s = pd.Series(data=data,index=['a','b','c','d'])
print('-------------通过index创建索引----------------------------')
print(s)
1.1.2、通过字典创建数据
import pandas as pd
dic = {
'语文':100,
'数学':99,
'理综':250
}
s = pd.Series(data=dic) # 键为索引,值为值
print(s)
1.1.3、查看属性
print(f'shape返回维度元组:{
s.shape}')
print(f'size返回行数数字:{
s.size}')
print(f'index返回索引:{
s.index}')
print(f'values返回值:{
s.values}')
print(f'dytpe返回数据类型:{
s.dtype}')
1.1.4、Series常见方法
s = pd.Series(data=[1,2,3,4,5,4,2])
# 为了方便看结果,将Series结果转为了列表
list(s.head(3)) #显示前n个数据 [1, 2, 3]
list(s.tail(3)) #显示后n个元素 [5, 4, 2]
s.unique() #去重 array([1, 2, 3, 4, 5], dtype=int64)
list(s.isnull()) #用于判断每一个元素是否为空,为空返回True,否则返回False [False, False, False, False, False, False, False]
list(s.notnull())#用于判断每一个元素是否为空,不为空返回Frue,否则返回False [True, True, True, True, True, True, True]
1.1.5、Series运算
- 法则:索引一致的元素进行算数运算否则结果为NaN
s1 = Series(data=[1,2,3],index=['a','b','c'])
s2 = Series(data=[1,2,3],index=['a','d','c'])
s = s1 + s2
s
# s1和s2索引中都有a和c,所以索引a对应的值为1+1=2,c类似;b和d只存在于一个Series中,因此无法计算,结果为NaN
1.2、DataFrame
- DataFrame是一个【表格型】的数据结构。DataFrame由按一定顺序排列的多列数据组成。设计初衷是将Series的使用场景从一维拓展到多维。DataFrame既有行索引,也有列索引。
- 行索引:index
- 列索引:columns
- 值:values
1.2.1、通过ndarray创建DataFrame
df = pd.DataFrame(data=[[1,2,3],[4,5,6]])
df
- 指定列索引和行索引
df = pd.DataFrame(data=[[1,2,3],[4,5,6]],index=['a','b'],columns=['e','f','g'])
df
1.2.2、通过字典创建DataFrame
dic = {
'name':['zhangsan','lisi','wanglaowu'],
'salary':[1000