- 一、pandas环境的搭建
- 1.pandas 简介
- 2.pandas安装和调用
- 二、pandas学习
- 1.pandas对文件的清洗
- a.pandas对文件的处理(读写文件)
- 2.pandas 一般功能
- 3.pandas核心数据结构
- a.Series
- Series定义
- Series创建
- Series属性
- Series数据访问
- Series转换和常用函数
- Series算术运算
- Series描述统计
- Series索引标签操作
- Series空值处理函数
- Series排序/重塑
- Series分组聚合函数
- b.Dataframe
- Dataframe定义
- Dataframe创建
- Dataframe属性
- Dataframe转换
- Dataframe索引/迭代
- Dataframe运算
- Dataframe常用函数
- Dataframe描述统计
- Dataframe索引标签操作
- Dataframe空值处理函数
- Dataframe排序/重塑
- Dataframe合并
- 时间序列
- pandas可视化
安装:pip install pandas
调用:import pandas as pd
参考资料:pandas官网
1.pandas对文件的清洗 a.pandas对文件的处理(读写文件)
本部分主要是读写文件:
import pandas as pd
import numpy as np
names=['xuehao','学号','姓名','学院','专业','导师工号','导师姓名','导师二','其他']
house=pd.read_csv('D:condaexampledemo2.csv',names=names,skiprows=[0,2],index_col='xuehao')
print(house)
house01=pd.read_excel('D:condaexampledemo3.xlsx')
print(house01)
运行的结果:
还有就是jupyter的笔记。
import numpy as np
import pandas as pd
names=['xuehao','学号','姓名','学院','专业','导师工号','导师姓名','导师二','其他']
house=pd.read_csv('D:condaexampledemo2.csv',names=names,skiprows=[0,2],index_col='xuehao')
house
house=pd.read_csv('D:condaexampledemo2.csv',usecols=['学号'])
house
house01=pd.read_excel('D:condaexampledemo3.xlsx')
house01
2.pandas 一般功能
3.pandas核心数据结构
a.Series
Series定义
Series创建
import numpy as np
import pandas as pd
#Series
data = np.array(['张三','李四','王五','赵六'])
s=pd.Series(data)
s
s=pd.Series(data,index=['1001','1002','1003','1004'],name='我是series')
s
#字典创建
data={'s100':'张三','s101':'李四','s102':'王五'}
s1=pd.Series(data)
s1
s2=pd.Series(data,index=[1,2,3])
s2
#用标量创建
s2=pd.Series(5,index=[1,2,3,4,5])
s2
Series属性
#Series的属性 s1.index s1.values type(s1.values) s1.array s1.dtype s1.ndim s.name s1.is_monotonicSeries数据访问
import numpy as np
import pandas as pd
s1 = pd.Series([1,2,3,4,5,6,7,8,9],
index=['a','b','c','d','e','f','g','h','i',])
s1
#普通索引获取数据
s1[8]
#整数数组索引获取数据
s1[[1,3,5,7]]
#布尔索引
s1[s1>4]
s1>4
s1[1:3]#前面后面的取不到
s1[-3:-1]
#使用index标签,检索数据
s1['b']
#使用index标签,整数数组检索数据
s1[['a','c','e']]
s1['a':'d']#标签切片不遵循左闭右开规则
Series转换和常用函数
Series算术运算
Series描述统计
Series索引标签操作
Series空值处理函数
Series排序/重塑
Series分组聚合函数
附上随课程的代码
import numpy as np
import pandas as pd
s=pd.Series([20,21,12],index=['London','New York','Helsinki'])
s
#定义函数
def square(x):
return x ** 2
#调用函数
#s.apply(square)
#把series中的每一个元素,方到func中去运行,运行完再将返回的数值传入到Series中
s1=s.apply(square,convert_dtype=False)
s1
s.agg('min')
s.agg(['min','max','sum','mean'])
s.aggregate('max')
#map
s=pd.Series(['cat','dog',np.nan,'rabbit'])
s
dict01 = {'cat':'kitten','dog':'puppy'}
s.map(dict01)
ser=pd.Series([390.,350.,30.,20.],index=['Falcon','Falcon','Parrot','Parrot'
],name="max speed")
ser
ser.groupby(["a","b","a","b"]).mean()
ser.groupby(level=0).mean()#直接根据标签来分组
ser.groupby(ser>100).mean()
ser.groupby(ser>100).sum()
s=pd.Series([1,2,3,4,5,6,7,8,9])
s
s.describe()
s
s.value_counts()#统计频数
b.Dataframe
Dataframe定义
Dataframe创建
视频课代码笔记:
import numpy as np
import pandas as pd
#创建一个空的
df0=pd.Dataframe()
df0
#一维列表创建
data=[1,2,3,4,5]
df1=pd.Dataframe(data)
df1
data=[1,2,3,4,5]
df1=pd.Dataframe(data,index=['s1','s2','s3','s4','s5'],columns=['sortNUM'])
df1
#二维列表创建
data = [['Alex',10],['Bob',12],['Clarke',13]]
df2=pd.Dataframe(data,columns=['Name','Age'],dtype=float)
df2
#字典创建
data=[{'a':1,'b':2},{'a':5,'b':10,'c':20}]
df3=pd.Dataframe(data)
df3
#用字典创建
data={'name':['tom','jack','steve','ricky'],'age':[28,34,29,42]}
df4=pd.Dataframe(data,index=['s1','s2','s3','s4'])
df4
#用字典创建
data={'one':pd.Series([1,2,3],index=['a','b','c']),'two':pd.Series([1,2,3,4],index=['a'
,'b','c','d' ])}
df5=pd.Dataframe(data)
df5
Dataframe属性
Dataframe转换
Dataframe索引/迭代
Dataframe运算
Dataframe常用函数
Dataframe描述统计
Dataframe索引标签操作
Dataframe空值处理函数
Dataframe排序/重塑
Dataframe合并
时间序列
pandas可视化


