1.简介
Pandas是基于numpy写的,让numpy用起来更简单
如果类比列表和字典
numpy就是列表,pandas就是字典
pandas可以给不同的列和行,重新命名
2.学习
2.1 基本介绍
Series
序列
Series的表示为,索引在左边,值在右边
; DataFrame
表格型的数据结构,包括:行索引、列索引
可以指定索引的名称,如果不指定默认为0~N-1
DataFrame可以看成一列列的Series,可以通过 df[‘xxx’] 来访问某一个Series
创建DataFrame时,可以选择指定 index和columns
也可以利用字典来生成DataFrame,字典中的键表示Series的名字
字典方式生成DataFrame
DataFrame的属性和方法
df.dtype
df.index 和 df.columns
df.values
df.describe()
df.T
df.head(num)
df.sort_index(axis,ascending)
df.sort_values(by='xx')
2.2 用Pandas选择数据
1.基本:对列
df['xx']
df.xx
2.切片:对行
df[0:3]
df['xx1':'xx3']
3.标签筛选
df.loc[行筛选条件,列筛选条件]
例如:df.loc['r1':'r3',['c1','c2','c3']]
4.索引数字筛选
df.iloc[行筛选条件,列筛选条件]
例如:df.iloc[[1,3,5],1:3]
5.混合筛选
df.ix[,]
6.布尔筛选
df[df.A > 8]
2.3 用Pandas设置值
过程就是:1)选择数据。 2)赋值。
1.基本
df.iloc[2,2] = 666
df.loc['r2','c2'] = 666
df.B[df.A > 8] = 666
2.批处理
df['c3'] = np.nan
df['new col'] = pd.Serires([datas...],index)
2.4 用Pandas处理丢失数据
df.dropna(axis,how='any|all')
df.fillna(value='xxx')
df.isnull()
np.any(df.isnull()) == True
2.5 用Pandas导入导出数据
pandas可以读写的格式很多:csv、excel、json、html、pickle
官方说明:https://pandas.pydata.org/pandas-docs/stable/user_guide/io.html
data = pd.read_csv("xx.csv")
data.to_csv("xx.csv")
2.6 Pandas的concat合并操作
df1 df2 df3
1.concat
res = pd.concat([df1,df2,df3],axis,ignore_index,join='inner|outer',join_axes=[df1.index])
2.append
res = df1.append(df2,ignore_index)
res = df1.append([df2,df3],ignore_index)
s = pd.Series([1,2,3,4],index=['a','b','c','d'])
res = df1.append(s,ignore_index)
2.7 Pandas的merge合并操作
更加复杂的合并
1.merge:基于列名进行合并
res = pd.merge(df1,df2,on='xxx')
res = pd.merge(df1,df2,on=['key1','key2'],how='inner|outer|left|right')
res = pd.merge(df1,df2,indicator=True|'indicator_name')
pd.merge(df1,df2,left_index=True,right_index=True,how='outer|inner')
pd.merge(df1,df2,on,suffixes=['_x1','_x2'],how)
2.8 plot出图
1.Series
data = pd.Series(......)
data.plot()
2.DataFrame
同上
3.散点图
data.plot.scatter(x='xx',y='xx')
ax = data.plot.scatter(x='A',y='B',color='xx',label='Class1')
data.plot.scatter(x='A',y='C',color='xx',label='Class2',ax=ax)
4.其他
bar hist box kde area scatter hexbin
Pandas学习视频和本文章图片来源:https://mofanpy.com/tutorials/data-manipulation/np-pd/
Original: https://blog.csdn.net/qq_41340996/article/details/115312285
Author: KyrieLiu52
Title: 【Pandas】Pandas基础知识笔记
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/676533/
转载文章受原作者版权保护。转载请注明原作者出处!