pandas简单操作学习
pandas基本数据结构
1. pandas中主要有两种数据结构,分别是:Series和DataFrame。
2. Series:一种类似于一维数组的对象,是由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成。仅由一组数据也可产生简单的Series对象。注意:Series中的索引值是可以重复的。
3. DataFrame:一个表格型的数据结构,包含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型等),DataFrame即有行索引也有列索引,可以被看做是由Series组成的字典。
基本数据结构构建
//导入库
import pandas as pd
import numpy as np
s = pd.Series([1,3,6,np.nan,44,1])
#定义DataFrame方式一——通过字典创建
df1 = pd.DataFrame({'A':1.,
'B':pd.Timestamp('20210424'),
'C':np.array([3]*4,dtype='int32'),
'D':pd.Categorical(["test","train","test","tain"]),
'E':pd.Series(1,index = list(range(4)),dtype = 'float32')})
print(df1)
#定义DataFrame方式二
df2 = pd.DataFrame(np.arange(12).reshape((3,4))) #标签默认为0,1,2...
datas = pd.date_range('20210421',periods = 6)
df3 = pd.DataFrame(np.random.randn(6,4),index = datas,columns = ['a','b','c','d']) #设置行与列标签
df3['e'] = np.nan #可直接添加
#查看各种数据
print(df1.index) #行标签
print(df1.columns) #列标签
print(df1.values) #数据
print(df2.describe()) #查看各种值,比如平均值,方差,最值等
排序
#index表示按标签排序,axis决定对行或者列,ascending决定正序or倒序(False)
df2.sort_index(axis= 1,ascending=False)
#按内容排序
df2.sort_index(by = 'D')
筛选数据
# print(df1.loc[:,['A','B']]) #按标签选择
# print(df3.loc['20210424',['a','b']])
# print(df3.iloc[3,1]) #按位置选择,也可以选择切片
# print(df3.iloc[[1,3,5],1:3]) #逐个筛选
print(df3[df3.a<0]) #逻辑筛选
关于nan数据的处理
print(df3.dropna(axis=1,how='all')) #how可以取‘any’ 表示只要有nan就满足条件
print(df3.fillna(value = 0)) #将nan全填充成0
print(np.any(df3.isnull())==True) #检查是否有丢失(适用于数据太多的情况)
python可操作数据格式
数据文件格式:
参考
链接: link.https://blog.csdn.net/weixin_42107718/article/details/98649208?utm_source=app
link.
https://blog.csdn.net/weixin_42107718/article/details/98659921